Используйте этот кусок кода, чтобы получить свой результат. Это означает, что textView
не вернет true
при редактировании, если существующий текст будет My name is:
. Например, если вы хотите остановиться после того, как пользователь ввел около 30 символов, сделайте проверку внутри, как показано ниже.
extension ViewController: UITextViewDelegate {
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if let textViewText = textView.text {
if textViewText == "My name is:" && text == "" {
return false
}
//For text range
if let textRange = Range(range, in: textViewText) {
let updatedText = textViewText.replacingCharacters(in: textRange,
with: text)
return updatedText.count < 30 + 11 //11 characters for *My name is:*
}
}
return true
}
}