Я проектирую весь интерфейс приложения программно, без использования раскадровки.
Мое требование к приложению - перевернуть все приложение локализованным языком.
Я могу добиться этого, применяя преобразование к каждому элементу.
Но для всего приложения оно становится сложным.
расширение для переключающих элементов:
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
Кто-нибудь может подсказать, как я могу выполнить адаптивное переключение для всего приложения?