2017-07-03 3 views
0

In meiner App habe ich Textlimits für einige textView. Zum Beispiel, In description Ich habe Textlimit von 10000. Wenn textView mehr als 10000 Zeichen enthält, muss ich nur die Rücktaste in der Tastatur aktivieren und alle anderen Tasten in der Tastatur deaktivieren müssen, ist es möglich. Hier ist mein versucht Code:iOS Swift Nur Rücktaste aktivieren Tastatur

func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText string: String) -> Bool { 
    if(textView == DescriptionText) 
    { 
     if range.length + range.location > (self.DescriptionText.text?.characters.count)! 
     { 
      return false 
     } 
     else if range.location == 0 && string == " " 
     { 
      return false 
     } 
     let NewLength = (self.DescriptionText.text?.characters.count)! - range.length 
     return NewLength <= 9999 
     } 
     else 
     { 
      if range.location == 0 && string == " " 
      { 
       return false 
      } 
      return true 
     } 
    } 
+0

anstelle der Deaktivierung aller anderen Tasten können Sie nur verhindern, richtig tippen? –

+0

NewLength Berechnung ist falsch. – YaBoiSandeep

+0

Bitte überprüfen Sie diese https://StackOverflow.com/a/32935626/5523205 – Shahrukh

Antwort

1

In textfieldShouldChange fügen Sie den folgenden:

if(range.length + range.location > textField.text.length) 
    { 
     return NO; 
    } 

    NSUInteger newLength = [textField.text length] + [string length] - range.length; 

    return newLength <= 10000; 
-1

ich nicht sicher, was Sie genau wollen, aber Sie können Benutzer verhindern mehr als 10000 Zeichen in Textview eingeben unten Linien.

func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText string: String) -> Bool { 

    let textString = (textView.text! as NSString).replacingCharacters(in: range, with: string) 

    if textView == self.DescriptionText && string.characters.count > 0 { 
     return textString.characters.count <= 10000 
    } 

    return true 
} 
+0

@ down-Wähler Wenn Sie etwas für Down-Abstimmung erklären, werde ich mich korrigieren, wenn es falsch ist. –

Verwandte Themen