2016-02-01 1 views
0

Я хочу ограничить свой текстовый просмотр до 50 символов. Я сделал это, но я не могу нажимать backspace после 50 символов. Как решить проблему ? Мой код, как показано ниже (Примечание: «txtv» мое имя TextView)Разрешение backspace в текстовом режиме в swift 2

func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool { 

     if (self.txtv.text.characters.count) >= 50 { 
     return false 
     } 
     return true 
    } 
+0

Проверить здесь: http://stackoverflow.com/questions/433337/set-the-maximum-character-length-of-a-uitextfield –

ответ

1

если пользователь резки текст или удаление строк длиной более одного символа (т.е. если они выбирают, а затем нажмите Backspace), сделайте так

func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool { 
return textView.text.characters.count + (text.characters.count - range.length) <= 50 
} 
+0

Спасибо @ Anbu.Karthik .. Это действительно помогло. Большое спасибо –

0

Вы не проверяете входящий текст, вы должны сделать это перед тем, как ограничивать ввод текста.

if text.characters.count == 0 { // if backspace 
    return true 
} 

if (self.txtv.text.characters.count) >= 50 { 
    return false 
    } 
    return true 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^