使 UIPageControl 在 iOS 8 和 9 上以从右到左的语言工作相同

Make UIPageControl work the same on iOS 8 and 9 in right-to-left languages

我希望 UIPageView 控件在 currentPage 属性 在从右到左的语言(如阿拉伯语)中为零时突出显示最右边的点。

第一页 iOS 9:

它的工作原理与 iOS 9 中的开箱即用,因此我不需要做任何事情。但在 iOS 8 中,它在左侧显示了突出显示的点,这对于使用从右到左的语言的人来说可能会造成混淆。

第一页 iOS 8:

问题:在iOS 8 中,有没有办法让 UIPageControl 突出显示从右到左语言的第一页最右边的点?当应用程序在 iOS 8 和 iOS 9 中都为 运行 时,我想实现一致的行为。

可能最简单的事情就是翻转控件的视图:

pageControl.transform = CGAffineTransformMakeScale(-1, 1);

iOS 9 包含针对 RTL 语言的重要 UI 更改。虽然翻转页面控件以获得一致的体验可能很容易,但您的应用程序的其余部分呢?仅翻转页面控件是没有意义的,为 iOS 8 个用户翻转 UI 的其余部分相当于在 UIKit 中重新实现所有 RTL 支持 –一项很难完全正确的重大任务。

我建议硬着头皮只关注 iOS 9. 如果你想继续支持旧的操作系统,那很好,但没有必要尝试复制一个完全翻转的 UI为他们。 iOS 9 支持与 iOS 8 相同的所有硬件,用户在升级时将得到翻转的 UI。