如题,需要类似Android ListView的控件,列表控件中的Item是按需少量创建、循环复用的,同时支持选中,高亮等
没有见过现成的UMG控件可以达成,大家不妨一起进行一个思路的探讨,
这里有个Wiki里说了元素的动态创建
https://wiki.unrealengine.com/UMG,_C…_Dynamic_Array
这里有讲述ListView里做Virtualization的方法:文章虽然讲的是XAML的例子,但是在 ListView Virtualization的分章节下面有一些虚拟化的思路可以借鉴,里面有一张图阐述了设计思路,直接点击链接查看,这里就不重复贴了:
https://blogs.msdn.microsoft.com/ala…tion-concepts/
感觉可以在BP里创建一个变量来维护一个ListItem的数组,数组内元素的数量一定大于可见的控件元素数量,可能是可见数组的两倍(具体长度需要试一下),在Scroll滚动的过程中不断进行视野范围之外的控件的移除和添加。
等有时间的时候可以用BP写个Demo测试一下
也期待大神分享自己的经验