gpt4 book ai didi

ios - 为 iOS 创建从右到左的用户界面

转载 作者:行者123 更新时间:2023-12-01 18:56:01 25 4
gpt4 key购买 nike

根据苹果documentation
“iOS 不会自动镜像控件,因此如果您希望 iOS 应用程序具有这种行为,请将控件子类化并覆盖绘图方法。”

当用户在主屏幕中选择阿拉伯语或希伯来语时,我想镜像我的整个 UI。我正在寻找相同的教程和文档,但没有任何帮助。

请找出我到目前为止所做的事情:
我正在使用 Xcode 6.1,应用程序目标从 iOS 7 到 iOS 8.1。
自动布局已启用,并且未使用左右约束。我只使用前导或尾随约束。
在项目设置中启用了基础国际化,并在本地化中添加了语言。但是当我在设备中运行应用程序并将设备语言和区域设置为阿拉伯语时,我无法获得镜像的 UI。我是否必须在代码中做任何事情才能获得镜像 UI?
支持基于 RTL 的 UI 的最佳方式是什么?如何继承控件和覆盖绘图方法?

请使用this link获取我的应用程序的示例屏幕截图。

最佳答案

我刚刚从 Apple 文档中找到了一种简单的方法,而不是为 RTL 和 LTR 语言提供 2 个 Storyboard。

  • 首先在项目设置中启用 Base 国际化
  • 添加您的语言 - 就我而言,我添加了阿拉伯语和希伯来语
  • xCode 将本地化您的 Storyboard,您可以看到不同语言的不同 Storyboard字符串
  • 在新创建的字符串文件中更改标签的文本。就我而言,我更改了阿拉伯语和希伯来语字符串文件
  • 使用 AutoLayout 来设计整个 UI。
  • 不要使用左或右约束。而不是只使用前导和尾随约束
  • 在您的主函数中添加以下代码并在模拟器中运行应用程序

  • NSArray* languages = [NSArray arrayWithObjects:@"ar", nil]; 
    [[NSUserDefaults standardUserDefaults] setObject:languages forKey:@"AppleLanguages"];


    现在,您的应用程序将适用于具有镜像 UI 的 RTL 语言,而无需 2 个 Storyboard。
    注意:如果您没有正确设置自动布局约束,它将无法正常工作。但是,由于新屏幕,您必须学习使用自动布局。

    关于ios - 为 iOS 创建从右到左的用户界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27104360/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com