导航栏无法快速将RTL转换为阿拉伯语

时间:2018-10-04 13:15:35

标签: ios swift ipad localization uinavigationbar

我具有供用户在应用内更改语言的功能。

如果我在未设置根视图控制器的情况下更改了应用程序中的语言,则导航栏不会将其布局转换为RTL。

当前页面浏览器控制器文本将根据我在App中设置的语言进行更改

我将代码放在此处,以更改RTL和LTR的自动布局。

    if let languageArray = UserDefaults.standard.value(forKey: APPLE_LANGUAGE_KEY) as? Array<String> {

        switch languageArray[0] {
        case KLanguage_ar:
            if #available(iOS 9.0, *) {
                UIView.appearance().semanticContentAttribute = .forceRightToLeft
            } else {
                // Fallback on earlier versions
            }
            break
        case kLanguage_en:
            if #available(iOS 9.0, *) {
                UIView.appearance().semanticContentAttribute = .forceLeftToRight
            } else {
                // Fallback on earlier versions
            }

            break
        default:
            break

        }   
    }

如果我在更改App语言后又更改了根视图控制器,则可以正常工作。

那么在不更改根视图控制器的情况下该怎么做?

0 个答案:

没有答案