我需要创建一个基本的 list view
或 scroll view
在我的游戏开发引擎 Unity 场景中。
- 我刚开始学习 Unity。
- 我试图创建一个
list view
没有成功。 - 我有一组字符串,需要像
list view
一样显示或scroll view
. - 一个接一个,我已将字符串输入到
List<string>
中现在。
现在正在做的是将字符串设置为直接显示换行符,\n
.
我还尝试将字符串添加到 scroll view
的内容中统一,但我还没有设法让它工作。
谁能提供引用?
最佳答案
我能想到的“最简单”和最优雅的方法是使用 Vertical Layout Group
- 在 Canvas 下添加一个新的空游戏对象
- 使用
RectTransform
组件设置所需的尺寸 - 附加“垂直布局组”组件
- 在您的代码中,对于列表中的每个字符串:
- 创建一个新的游戏对象:
- 附加一个文本组件
- 用你的字符串填充
text
属性 - 将转换的父级设置为第一步中的第一个空游戏对象
这是一段代码我还没有测试过:
// Drag & Drop the vertical layout group here
public UnityEngine.UI.VerticalLayoutGroup verticalLayoutGroup ;
// ... In your function
RectTransform parent = verticalLayoutGroup.GetComponent<RectTransform>() ;
for( int index = 0 ; index < stringList.Count ; ++index )
{
GameObject g = new GameObject( stringList[index] ) ;
UnityEngine.UI.Text t = g.AddComponent<UnityEngine.UI.Text>();
t.addComponent<RectTransform>().setParent( parent ) ;
t.text = stringList[index] ;
}
如果您需要更多自定义,您可以实例化一个预制件,而不是手动创建文本游戏对象。
关于c# - 如何统一创建一个基本的 ListView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40928336/