Мне нужно создать собственный класс для проектирования textField в XIB и использовать его несколько раз в моем viewController.Я хочу изменить название каждого заполнителя программно.
textField
XIB
viewController
Создать подкласс как:
class CustomTextField: UITextField { override func awakeFromNib() { super.awakeFromNib() } func placeHolderColor(pColor: UIColor, pText: String) { self.attributedPlaceholder = NSAttributedString(string: pText, attributes: [NSAttributedStringKey.foregroundColor: pColor]) } }
попробуйте создать пользовательский класс uitextfield
@IBDesignable class CustomTextField: UITextField { @IBInspectable var TFPlaceholder: String? { willSet { self.placeholder = newValue } } }
Goodluck !!:)
Изменить можно следующим образом
1) yourTextField.placeholder = "some string"
yourTextField.placeholder = "some string"
2) yourTextField.attributedPlaceholder = NSAttributedString(string: "some string")
yourTextField.attributedPlaceholder = NSAttributedString(string: "some string")
Если вы хотите изменить заполнитель, вы можете использовать следующий код
yourTextField.attributedPlaceholder = NSAttributedString(string: "YourText", attributes: [NSForegroundColorAttributeName : UIColor.white])
Объявите открытую переменную типа string в вашем пользовательском классе текстового поля. Получите доступ к этой переменной, чтобы изменить имя заполнителя там, где это когда-либо было реализовано.