iOS: перевернуть весь интерфейс приложения для арабского и ивритского языков программно без раскадровки - PullRequest
0 голосов
/ 26 июня 2018

Я проектирую весь интерфейс приложения программно, без использования раскадровки. Мое требование к приложению - перевернуть все приложение локализованным языком.

Я могу добиться этого, применяя преобразование к каждому элементу. Но для всего приложения оно становится сложным.

расширение для переключающих элементов:

extension CGAffineTransform {
    static func uiTransform() -> CGAffineTransform {
        if UserDefaults.standard.string(forKey: "i18n_language") == "ar" {
            let transform = CGAffineTransform(scaleX: -1, y: 1)
            return transform
        }else{
            let transform = CGAffineTransform(scaleX: 1, y: 1)
            return transform
        }
    }
}

добавочный номер:

self.MasterView.transform = CGAffineTransform.uiTransform()

Я пытался применить semanticContentAttribute, но он не работает должным образом.

UIView.appearance().semanticContentAttribute = .forceRightToLeft

Screen shot 1

Screen shot 2

Кто-нибудь может подсказать, как я могу выполнить адаптивное переключение для всего приложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...