在使用Autolayout的时候,相信很人都有这个疑惑,为什么苹果同时保留NSLayoutAttributeLeft、NSLayoutAttributeRight和NSLayoutAttributeLeading、NSLayoutAttributeTrailing呢?布局效果都是一样的啊(中国)。
NSLayoutAttributeLeft 和 NSLayoutAttributeRight 代表从左右进行布局
NSLayoutAttributeLeading和 NSLayoutAttributeTrailing 代表从前后进行布局
在中国布局习惯从左到右,因在中国左边就是前边,右边就是后边;但在有些阿拉伯国家地区布局习惯从右往左,即右边是前边,左边是后边;在代码里使用NSLayoutAttributeLeft 和 NSLayoutAttributeRight布局后,不管在中国使用、还是在阿拉伯使用界面都是从左向右显示(阿拉伯人不习惯了);但是如果在代码里使用NSLayoutAttributeLeading和 NSLayoutAttributeTrailing
布局,在中国界面是从左向右显示,在阿拉伯是从右向左显示(界面被翻转了)。
所以推荐:NSLayoutAttributeLeading和 NSLayoutAttributeTrailing(xib及storyboard也都使用leading、trailing)
转