【UE4】-ListView使用

1、在当前工作UI蓝图(ListViewUI)中加入ListView

image.png

2、创建一个ListViewItemWidget

在ListView的Details面板,选择ListEntries,指定EntryWidgetClass,默认为None,点击+新建一个ListViewItemWidget蓝图。


image.png

3 、在ListViewItemWidget添加需要的元素

添加了一个Horizontal Box,在HorizontalBox下添加了三个Text,分别命名为Name_Tex,Age_Tex,Sex_Tex


image.png
  • 设置变量名,并勾选IsVarable,便于在ListViewUI蓝图中引用


    image.png
  • 设置完成后的元素布局


    image.png

4、创建一个ListData蓝图,蓝图类为Object类型,

image.png
  • 设置Item所需要的变量(Variables)
    image.png
  • 对每个变量设置对应的变量名和变量类型,勾选Instance Editable(可在蓝图外调用)和Expose On Spawn(生成时公开)
    image.png

5、在ListViewItemWidget中类设置中添加UserObjectListEntry接口

image.png
  • UserObjectListEntry接口添加后,interfaces接口中自动加入了UserObjectListEntry中接口


    image.png
  • 实现OnListItemObjectSet接口,当设置ListItem的时候调用此接口


    image.png
  • 将ListData蓝图的变量与ListItemViewWidget中的各元素对应
    cast to listData,在Set ListItem时转换成ListData


    image.png
  • 在ListViewUI蓝图中构造数据,并将Item加入到ListView中。
  1. 通过ForLoop创建一个循环,用于构建ListData对象,指定创建对象数量,lastIndex = 20。循环体使用Construct Object From Class构建ListData对象,class选择ListData,分别对变量赋值,使用RandomArrayItem.

  2. 将listView变量拖入Event Graph中,使用其AddItem的方法。将ConstructListData的Return Value指定为AddItem的Item

image.png

你可能感兴趣的:(【UE4】-ListView使用)