Как показать ошибку проверки на UITextField? - PullRequest
0 голосов
/ 20 декабря 2018

Я хочу создать ошибку при проверке текстового поля, очень похожую на эту:

enter image description here

Я понял, что есть какой-то собственный красный значок iOS, которыйЯ могу показать ошибку валидации?

Как мне достичь чего-то подобного?

Вам известна библиотека или фрагмент кода для достижения этой цели?

Ответы [ 2 ]

0 голосов
/ 20 декабря 2018

1- Назначить rightView на UITextField

2- Соответствовать UITextFieldDelegate

class ViewController:UIViewController, UITextFieldDelegate {

    @IBOutlet weak var textfield: UITextField!
     override func viewDidLoad() {
        super.viewDidLoad()

        self.textfield.delegate = self
        let img =  UIImageView(image: UIImage(named: "02"))
        img.frame = CGRect(x: 0, y: 0, width: 20, height: 20)
        textfield.rightView = img
        textfield.rightViewMode = .always
    }
    func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {

        let content = (textField.text! as NSString).replacingCharacters(in: range, with: string)  
        textField.rightView!.isHidden = content.count % 2 == 0 
        return true
    }
}

enter image description here

0 голосов
/ 20 декабря 2018

Нет, нет собственного индикатора ошибки проверки iOS, вам нужно использовать свое собственное изображение.

Таким образом, вы можете установить UIImageView со своим собственным изображением ошибки проверки как rightView вашего TextField

yourTextField.rightView = UIImageView(image: UIImage(named: "yourImage"))
yourTextField.rightViewMode = .always

Теперь внутри некоторых delegate наборов методов isHidden из rightView вашего TableView в зависимости от вашего состояния

func textFieldDidEndEditing(_ textField: UITextField) { // for example when editing did end
    textField.rightView?.isHidden = isEverythingCorrect
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...