问题描述
现在有一个需求,就是显示一个滑动列表
这个滑动列表里面的项目数量是不一定的,会适时刷新
在编辑器中,列表的使用是正常的。当打了包之后,就会出现列表无法滑动的情况。
这是由于ContentSizeFitter没有及时刷新的缘故。
列表结构
在滑动列表中,容器Content挂载了ContentSizeFitter和VerticalLayoutGroup,以便计算该容器内装载物体的高度。
在这个容器内,又装着两个标题及其对应的两个列表容器。这两个列表容器也同样挂载着ContentSizeFitter和VerticalLayoutGroup。
解决方案
打了log之后发现,列表初始化前后的高度没有改变,说明ContentSizeFitter没有刷新。
在初始化的代码后加上强制刷新的代码,随后列表就可以正常滑动了。文章来源:https://www.toymoban.com/news/detail-516571.html
先刷新子列表的高度,随后再刷新父列表高度。文章来源地址https://www.toymoban.com/news/detail-516571.html
LayoutRebuilder.ForceRebuildLayoutImmediate(m_List_1.GetComponent<RectTransform>());
LayoutRebuilder.ForceRebuildLayoutImmediate(m_List_2.GetComponent<RectTransform>());
LayoutRebuilder.ForceRebuildLayoutImmediate(m_obj_Content.GetComponent<RectTransform>());
到了这里,关于Unity Content Size Fitter 刷新不及时的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!