How to get a Label with wrapped text?(如何获得带有包装文本的标签?)
问题描述
我试过以下代码:
Label label = new Label(reallyLongString, skin);
label.setWrap(true);
label.setWidth(100); // or even as low as 10
table.add(label);
...
但我得到的只是一条很宽的线,从屏幕上划出.如何获取带有换行文本的标签?
and yet all I get is a very wide line that draws off the screen. How to get a Label with wrapped text?
推荐答案
这与 slider always has default width 或 "滑块始终具有默认宽度".
您需要将该标签放入表格中,并将正确大小添加到标签所在表格的单元格中.
You need to put that label into a table and add the right size to the cell of the table where the label is.
UI 小部件不设置自己的大小和位置.相反,父窗口小部件设置每个孩子的大小和位置.小部件提供父级可以用作提示的最小、首选和最大大小.一些父窗口小部件,例如 Table,可以限制子窗口的大小和位置.要在布局中为小部件指定特定尺寸,小部件的最小、首选和最大尺寸将保持不变,并在父级中设置尺寸限制.
UI widgets do not set their own size and position. Instead, the parent widget sets the size and position of each child. Widgets provide a minimum, preferred, and maximum size that the parent can use as hints. Some parent widgets, such as Table, can be given constraints on how to size and position the children. To give a widget a specific size in a layout, the widget's minimum, preferred, and maximum size are left alone and size constraints are set in the parent.
来源:来自 libgdx wiki Scene2D
解决办法:
Label label = new Label(reallyLongString, skin);
label.setWrap(true);
label.setWidth(100); // or even as low as 10
table.add(label).width(10f);// <--- here you define the width
这篇关于如何获得带有包装文本的标签?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何获得带有包装文本的标签?
基础教程推荐
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- 在螺旋中写一个字符串 2022-01-01