C# UI仅在通过场景编辑时按预期更新

C# UI仅在通过场景编辑时按预期更新,c#,unity3d,unity5,unity3d-2dtools,C#,Unity3d,Unity5,Unity3d 2dtools,我正在尝试制作一个单列宽度的级联菜单。我有主类别和子类别。子类别包含数量未知的项目,这些项目以框的形式显示在两列中。否则,所有内容都在一列中 层次结构如下所示: MainCategory 1 | Vertical Layout Group Text (category title) Subcategory | Vertical Layout Group | Content Size Fitter Text (subcategory title)

我正在尝试制作一个单列宽度的级联菜单。我有主类别和子类别。子类别包含数量未知的项目,这些项目以框的形式显示在两列中。否则,所有内容都在一列中

层次结构如下所示:

 MainCategory 1 | Vertical Layout Group 
      Text (category title)
      Subcategory | Vertical Layout Group | Content Size Fitter
          Text (subcategory title)
          ItemContainer |Grid Layout Group |Content Size Fitter
              item1
              item2
              item3
              item4
      Subcategory | Vertical Layout Group | Content Size Fitter
          Text (subcategory title)
          ItemContainer |Grid Layout Group | Content Size Fitter
              item1
              item2
 MainCategory 2 | Vertical Layout Group
我制作了一个脚本,只保留单击的子类别处于活动状态,并禁用其他所有子类别的游戏对象

当我进入播放模式并开始点击东西时,UI元素的位置会出错。主要是一些物品的位置不好

然而,当游戏仍在运行时,在场景视图中,我手动尝试移动一个锁定的UI元素,一切都会突然到位。我猜这是因为一些UI元素事件函数没有在适当的时间触发


我应该如何组织我的UI以使其正确显示?当我尝试在场景视图中移动UI元素时,会触发什么?我可以从代码中触发吗?

这里有问题吗?您有一些代码要共享吗?看来嵌套内容大小装配工正在破坏它。当itemContainers内容大小安装程序更新时,父内容大小安装程序不会更新。每次更新后打开和关闭父级内容大小过滤器将修复此问题>\u>