How can I change language in TextField:
class langField: UITextField {
var languageCode:String? {
didSet {
if self.isFirstResponder {
self.resignFirstResponder()
self.becomeFirstResponder()
}
}
}
override var textInputMode: UITextInputMode? {
if let language_code = self.languageCode {
for keyboard in UITextInputMode.activeInputModes {
if let language = keyboard.primaryLanguage {
let locale = Locale.init(identifier: language)
if locale.languageCode == language_code {
return keyboard
}
}
}
}
return super.textInputMode
}
}
Then:
let textFiled = langField()
textField.languageCode = "en"
And when user taps on your TextField language will become English
How to do the same for the search bar?
I do this:
extension UISearchBar {
func textField() -> UITextField? {
for view in subviews {
for subview in view.subviews {
if let textField = subview as? UITextField {
return textField
}
}
}
return nil
}
}
But when I call textField
there is no .languageCode
method