如何改变4个变量中的任意一个改变另外3个



我有4个变量,我想让用户链接在一起快速调整,像这样:

截图

我是这样做链接2的:

bool lockLeft, lockTop, lockRight, lockBottom;
if (lockLeft)
{
    if (radius.topLeft!= oldRadius.topLeft))
        radius.bottomLeft = radius.topLeft;
    if (radius.bottomLeft!= oldRadius.bottomLeft))
        radius.topLeft = radius.
}
//if(lockRight)...similar
oldRadius=radius;

问题是这只在它被编码的顺序中起作用。

例如,如果我先比较topLeftbottomLeft,然后比较topLefttopRight,那么如果用户更改topRight,那么bottomLeft将不会更新,除非我再次比较topLeftbottomLeft

是否有更优雅的方法来做到这一点?

确保你的OnInspectorGUI()方法的顶部有serializedObject.Update();

尝试2个数组-一个值数组和一个bool数组,然后你可以在两个方向上递归地检查值之间的链接

相关内容

  • 没有找到相关文章

最新更新