- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想平滑地插入 UI 游戏对象位置,而不是 Unity 的 LayoutGroup
类(特别是 HorizontalLayoutGroup
)处理的默认捕捉。 问题是我不知道 LayoutGroup
类在布局计算完成后使用什么方法或属性来访问或覆盖移动 UI 对象。
我一直在整个 UnityEngine.UI
和他们的 Bitbucket 存储库中进行搜索。如果一切都失败了,我将不得不创建自己的布局类,从而失去 Unity 的所有强大布局功能。
Bitbucket 存储库链接:https://bitbucket.org/Unity-Technologies/ui/src/0155c39e05ca/UnityEngine.UI/UI/Core/Layout/?at=5.2
我只需要找出 UnityEngine.UI
命名空间中的哪些函数或属性可用于覆盖 Unity 的 LayoutGroup 子定位,以便可以将其替换为 lerp或补间。
最佳答案
如果您要求直接回答,这里是 LayoutGroup
类的方法:
protected void SetChildAlongAxis(RectTransform rect, int axis, float pos, float size)
{
if (rect == null)
return;
m_Tracker.Add(this, rect,
DrivenTransformProperties.Anchors |
DrivenTransformProperties.AnchoredPosition |
DrivenTransformProperties.SizeDelta);
rect.SetInsetAndSizeFromParentEdge(axis == 0 ? RectTransform.Edge.Left : RectTransform.Edge.Top, pos, size);
}
这是从 HorizontalOrVerticalLayoutGroup
中调用的方法:
protected void SetChildrenAlongAxis(int axis, bool isVertical)
但是
我建议您不要使用此代码,因为这是所有布局(网格、水平和垂直)的基类。改变行为会影响所有派生布局。
您可以创建自己的布局组
或
解决问题:
希望对你有帮助
关于c# - 如何在 LayoutGroup 中跟踪 UI 游戏对象的移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38502288/
我想平滑地插入 UI 游戏对象位置,而不是 Unity 的 LayoutGroup 类(特别是 HorizontalLayoutGroup)处理的默认捕捉。 问题是我不知道 LayoutGroup
我是一名优秀的程序员,十分优秀!