@@ -81,6 +81,13 @@ namespace Ichni.Editor
|
||||
public Vector2 vector2;
|
||||
public void FindTab(GameElement targetElement)
|
||||
{
|
||||
if (targetElement.connectedTab != null)
|
||||
{
|
||||
// 如果已经有Tab了,直接选中
|
||||
targetElement.connectedTab.SelectGameElement();
|
||||
getTabPos(targetElement.connectedTab);
|
||||
return;
|
||||
}
|
||||
targetElement.ScanAndAddEnableTypes();
|
||||
if (!EditorManager.instance.ExpandWhileClick)
|
||||
{
|
||||
@@ -144,11 +151,17 @@ namespace Ichni.Editor
|
||||
|
||||
yield return null;
|
||||
}
|
||||
yield return null; // 等待一帧,确保UI更新
|
||||
getTabPos(targetElement.connectedTab);
|
||||
|
||||
|
||||
}
|
||||
void getTabPos(HierarchyTab finalTab)
|
||||
{
|
||||
|
||||
HierarchyTab finalTab = targetElement.connectedTab;
|
||||
|
||||
// 修正定位算法
|
||||
yield return null; // 等待布局刷新
|
||||
|
||||
RectTransform tabRect = finalTab.GetComponent<RectTransform>();
|
||||
RectTransform containerRect = tabContainer;
|
||||
RectTransform viewportRect = scrollRect.viewport != null ? scrollRect.viewport : scrollRect.GetComponent<RectTransform>();
|
||||
@@ -170,7 +183,7 @@ namespace Ichni.Editor
|
||||
|
||||
scrollRect.verticalNormalizedPosition = normalized;
|
||||
finalTab.SelectGameElement();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user