相对布局。约束方程解释
Relative layout. Constrain equation explanation
阅读有关相对布局中的约束,我发现了以下内容:
Mathematically, any constraint can be expressed using the following equation:
Y = multiplier * X + Constant
X and Y are attributes of views and can be either left, right, top, bottom, leading, trailing, width, height, centerX, centerY, or baseline.
有人可以解释一下吗?
我想在示例中解释效果最好,所以:
假设您有一些视图位于其视图控制器中,因此它距左侧 10 点。这意味着它的行距设置为 10。现在,这个视图有我们想要固定到它左侧的子视图。所以我们设置前导约束以匹配父级前导。假设我们将此约束的常量设置为 0(无间隙)并且不修改乘数(默认为 1),则此视图的左侧位置设置为:
childLeading = parentLeading * 乘数 + 常数
即:
儿童领先 = 10 * 1 + 0 = 10
因此子视图的左侧与其父视图处于相同的位置。
修改约束的常量,我们将子视图向左移动更多 f.e。常量设置为 8 结果:
儿童领先 = 10 * 1 + 8 = 18
结果视图位于距其父级左边缘 8 点的位置。
我猜你可以在乘数的情况下遵循这个逻辑(它比常量少得多)
阅读有关相对布局中的约束,我发现了以下内容:
Mathematically, any constraint can be expressed using the following equation:
Y = multiplier * X + Constant
X and Y are attributes of views and can be either left, right, top, bottom, leading, trailing, width, height, centerX, centerY, or baseline.
有人可以解释一下吗?
我想在示例中解释效果最好,所以:
假设您有一些视图位于其视图控制器中,因此它距左侧 10 点。这意味着它的行距设置为 10。现在,这个视图有我们想要固定到它左侧的子视图。所以我们设置前导约束以匹配父级前导。假设我们将此约束的常量设置为 0(无间隙)并且不修改乘数(默认为 1),则此视图的左侧位置设置为:
childLeading = parentLeading * 乘数 + 常数
即:
儿童领先 = 10 * 1 + 0 = 10
因此子视图的左侧与其父视图处于相同的位置。
修改约束的常量,我们将子视图向左移动更多 f.e。常量设置为 8 结果:
儿童领先 = 10 * 1 + 8 = 18
结果视图位于距其父级左边缘 8 点的位置。
我猜你可以在乘数的情况下遵循这个逻辑(它比常量少得多)