iOS - AutoresizingMask margin:为什么我需要设置双方?

时间:2013-02-17 22:21:58

标签: ios autoresizingmask

我的问题可能看起来很奇怪,但有一个例子,它更容易理解:

我有一个UIButton,我创建然后:

// [...] Create button, add it to view
myButton.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin;

如果我没有指定 UIViewAutoresizingFlexibleRightMargin ,我的组件将不会在屏幕上显示正确的x比率。为什么?我指定了左边距,所以当我旋转设备时,我的元素应该处于良好的位置...不理解右边距的需要。

1 个答案:

答案 0 :(得分:2)

当您同时使用两个灵活边距时,宽度的变化将在两个边距之间分开。这通常用于保持视图居中。

当您仅使用一个灵活边距时,宽度的变化将全部应用于一个灵活边距。这意味着无论宽度如何变化,其他边距都保持不变。