5

如果用户使用从右到左的语言环境(希伯来语、阿拉伯语) ,iOS 6则有一个新的“功能”可以反映 xib 文件中的 UI 元素。(http://developer.apple.com/library/ios/#documentation/miscellaneous/conceptual/iphoneostechoverview/iPhoneOSTechnologies/iPhoneOSTechnologies.html

它完全弄乱了我的界面。

有没有办法在不禁用自动布局的情况下禁用它?

4

2 回答 2

11

接下来是@silyevsk 的解决方案 - 这是我修复 UI 镜像的一种快速方法:在文本编辑器(xcode/textedit/atom 等)中打开您的 xib 文件。使用替换工具,替换以下内容:

firstAttribute="trailing" 与:firstAttribute="right"

secondAttribute="trailing" 与: secondAttribute="right"

firstAttribute="leading" with: firstAttribute="left"

secondAttribute="leading" with: secondAttribute="left"

为我工作并在 IB 上节省了许多苦苦挣扎的时间。

于 2014-04-22T23:05:58.530 回答
10

水平约束在 Interface Builder 中有“方向”选项。默认情况下,它设置为“Leading to Trailing”,这会导致镜像。您可以将其设置为“从左到右”以禁用镜像。

请注意,通过编辑 storyboard/xib 文件更改所有约束会导致异常或混乱的布局,似乎 Interface Builder 在更改方向设置时会创建/更改一些额外的约束。

因此,我发现更改现有 xib/storyboard 的更快方法是选择所有设置了“Leading to Trailing”的约束,将它们全部更改为“Left to Right”,然后检查是否自动创建了一些新的水平约束- 他们的方向也应该改为“从左到右”。

于 2013-02-21T06:06:42.823 回答