使用autoresize的阿拉伯语英语iPhone用户界面?

时间:2016-12-28 17:11:51

标签: ios iphone xcode autolayout autoresize

您好我想将整个UI视图转换为阿拉伯语[from Right to left] 如果用户从设置更改语言并打开应用程序

我有以下查询

1)我是否需要为每个人创建单独的UI? 2)有没有简短的方法来实现这一目标? 3)我需要完整的UI像镜子一样从左侧[幻灯片菜单]转换为从右侧等... 4)Xcode 8.2再次自动调整引入自动布局我可以不用自动布局吗?

1 个答案:

答案 0 :(得分:1)

  1. 不,无论语言如何,您只创建一个用户界面。

  2. 是的,有一个简短的方法,你必须使用本地化。 apple doc for internationlization

  3. UI转换由iOS完成(仅适用于uikit控制器。请参阅下面的编辑)

  4. auotlayout与本地化无关。一般来说,最好使用自动布局,外部你必须计算不同的屏幕尺寸。 再次与本地化无关。请参阅下面的编辑。

  5. 编辑:如果你想镜像自己的观点,例如,uiimage和uilabel。然后你必须自己做自己布局或框架。如果您使用的是uinavigation或tabbarcontroller,这些控制器将由iOS镜像。所以你必须自己处理内容视图。 您可以生成不同的约束并在运行时相应地安装它。但如果您的观点非常复杂,那么您应该设计2个不同的故事板,一个用于从左到右,一个用于从右到左,并在应用启动期间加载相应的故事板。

    <强>重新编辑: 所以这是我的英文应用程序。我的应用程序不支持从右到左的语言

    english

    现在,如果我添加,请说像阿拉伯语这样的从右到左的语言: arabic

    正如您所见,表格单元格由iOS自动转换。我刚刚在英语,德语等地方添加了阿拉伯语的国际化。因此,如果您在适当的位置使用UIKit控件,它将自动转换。但是,如果您的应用程序非常自定义且具有复杂的视图层次结构,那么iOS无法帮助您完成自己的操作。如果你坚持标准和简单的层次结构。那你就不要太担心了。只是测试它并为自己看。

    所以在我的应用程序中,例如,我所要做的就是将字符串翻译成从右到左的语言。

    修改 这是关于第4号问题的正确信息apple doc

      

    使用“自动布局”相对于彼此布局视图而没有固定的原点,宽度和高度,以便在语言或区域设置更改时视图重新定位和调整大小。自动布局使得可以为所有语言提供一组.storyboard和.xib文件。