Как программно изменить текст placeHolder в UItextField, если я разработал textField в XIB - PullRequest
0 голосов
/ 25 марта 2019

Мне нужно создать собственный класс для проектирования textField в XIB и использовать его несколько раз в моем viewController.Я хочу изменить название каждого заполнителя программно.

Ответы [ 5 ]

0 голосов
/ 25 марта 2019

Создать подкласс как:

class CustomTextField: UITextField {

    override func awakeFromNib() {
        super.awakeFromNib()

    }

    func placeHolderColor(pColor: UIColor, pText: String) {

        self.attributedPlaceholder = NSAttributedString(string: pText,
                                                               attributes: [NSAttributedStringKey.foregroundColor: pColor])

    }
}
0 голосов
/ 25 марта 2019

попробуйте создать пользовательский класс uitextfield

@IBDesignable
class CustomTextField: UITextField {

    @IBInspectable var TFPlaceholder: String? {
        willSet {
            self.placeholder = newValue
        }
    }
}

enter image description here

Goodluck !!:)

0 голосов
/ 25 марта 2019

Изменить можно следующим образом

1) yourTextField.placeholder = "some string"

2) yourTextField.attributedPlaceholder = NSAttributedString(string: "some string")

0 голосов
/ 25 марта 2019

Если вы хотите изменить заполнитель, вы можете использовать следующий код

yourTextField.attributedPlaceholder =
            NSAttributedString(string: "YourText", attributes: [NSForegroundColorAttributeName : UIColor.white])
0 голосов
/ 25 марта 2019

Объявите открытую переменную типа string в вашем пользовательском классе текстового поля. Получите доступ к этой переменной, чтобы изменить имя заполнителя там, где это когда-либо было реализовано.

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