如何统一创建一个基本的列表视图
How to create a basic listview in unity
我需要在游戏开发引擎 Unity 的场景中创建一个基本的 list view
或 scroll view
。
- 我刚开始学习Unity。
- 我尝试创建
list view
但没有成功。
- 我有一组字符串需要显示为
list view
或 scroll view
。
- 一个接一个,我现在已经把字符串输入到
List<string>
了。
现在正在做的是将字符串设置为直接显示换行符,\n
。
我也试过将字符串统一添加到 scroll view
的内容中,但我没能成功。
谁能提供参考?
我能想到的 "easiest" 也是最优雅的方法是使用 Vertical Layout Group
- 在您的 canvas
下添加一个新的空游戏对象
- 使用
RectTransform
组件设置所需的尺寸
- 附加 "Vertical Layout Group" 组件
- 在您的代码中,对于列表中的每个字符串:
- 创建一个新的游戏对象:
- 给它附加一个文本组件
- 用您的字符串填充
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] ;
}
如果您需要更多自定义,您可以实例化一个预制件,而不是手动创建文本游戏对象。
我需要在游戏开发引擎 Unity 的场景中创建一个基本的 list view
或 scroll view
。
- 我刚开始学习Unity。
- 我尝试创建
list view
但没有成功。 - 我有一组字符串需要显示为
list view
或scroll view
。 - 一个接一个,我现在已经把字符串输入到
List<string>
了。
现在正在做的是将字符串设置为直接显示换行符,\n
。
我也试过将字符串统一添加到 scroll view
的内容中,但我没能成功。
谁能提供参考?
我能想到的 "easiest" 也是最优雅的方法是使用 Vertical Layout Group
- 在您的 canvas 下添加一个新的空游戏对象
- 使用
RectTransform
组件设置所需的尺寸 - 附加 "Vertical Layout Group" 组件
- 在您的代码中,对于列表中的每个字符串:
- 创建一个新的游戏对象:
- 给它附加一个文本组件
- 用您的字符串填充
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] ;
}
如果您需要更多自定义,您可以实例化一个预制件,而不是手动创建文本游戏对象。