• Unreal ListView使用篇


    应用

    ListView,在Unreal UI界面开发中用途非常广泛,基本只要你使用列表,就得需要用ListView。比如排行榜100个列表,界面上只需要显示出10个,我们肯定不能生成100个ui实例,只生成肉眼所见的实例个数,然后反复使用。直接上效果图。

    通用WidgetReflector 得出Widget只生成4条。

    分析

    /** Set the list of items to display within this listview */
    	template <typename ItemObjectT, typename AllocatorType = FDefaultAllocator>
    	void SetListItems(const TArray<ItemObjectT, AllocatorType>& InListItems)
    	{
    		ClearListItems();
    		ListItems.Append(InListItems);
    
    		OnItemsChanged(ListItems, TArray<UObject*>());
    
    		RequestRefresh();
    	}
    

    ListView的使用非常简单,只需调用这个方法即可。看参数,就是要传入 TArray 的Object类型即可。

    使用步骤

    1. 自定义继承自UObject类型的数据
    2. 子Item UI刷新
    3. 给ListView赋上需要显示哪种ItemEntry

    注意这里的EntryWidgetClass 能赋的必须是实现了上述第二个步骤的接口才能赋。
    4. 调用SetListItems接口

    因为ListView的使用比较简单,就用蓝图摆摆了。

    常用功能

    • 如果想默认打开ListView 是中间的 某一列数据
    void UListView::ScrollIndexIntoView(int32 Index)
    {
    	BP_ScrollItemIntoView(GetItemAt(Index));
    }
    
    • 不运行游戏直接预览

      可以调整NumDesignerPreviewEntries,可以在不运行游戏的情况下,改变此数值直接编译后显示效果。

    __EOF__

  • 本文作者: 不三周助
  • 本文链接: https://www.cnblogs.com/u3ddjw/p/15912880.html
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    【遍历二叉树算法描述】
    过来人:玩游戏不如做游戏,会上瘾的建模工作
    upgrade k8s (by quqi99)
    Selenium自动化测试总结
    智慧配电房监控系统的技术研究
    融资超25亿,智谱AI推出第三代基座大模型ChatGLM3
    12-Java 继承&&抽象类&&代码块(详解~)
    Code Bloaters-代码肿胀
    光致发光荧光量子检测的作用
    JavaScript学习--Day04
  • 原文地址:https://www.cnblogs.com/u3ddjw/p/15912880.html