Ios 如何在20个字符后切断文本视图?

Ios 如何在20个字符后切断文本视图?,ios,swift,uitextviewdelegate,Ios,Swift,Uitextviewdelegate,我试图将文本视图中的字符数限制为20个。20岁以后,它应该有。。。。函数未启动,我正在正确设置代理 动物类 cell.pn.text = np[indexPath.row] cell.pn.selectable = false cell.pn.delegate = self extension Animal : UITextViewDelegate{ func textView(textView: UITextView, shouldChangeTextInRange range: NSRan

我试图将文本视图中的字符数限制为20个。20岁以后,它应该有。。。。函数未启动,我正在正确设置代理

动物类

cell.pn.text = np[indexPath.row]
cell.pn.selectable = false
cell.pn.delegate = self
extension Animal : UITextViewDelegate{
func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool {
    return textView.text.characters.count + (text.characters.count - range.length) <= 20
    }
}
动物类的扩展

cell.pn.text = np[indexPath.row]
cell.pn.selectable = false
cell.pn.delegate = self
extension Animal : UITextViewDelegate{
func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool {
    return textView.text.characters.count + (text.characters.count - range.length) <= 20
    }
}
试试这个:

func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
        let text = textField.text
        let newLength = text.characters.count + string.characters.count - range.length
        return newLength <= 20
    }
试试这个:

func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
        let text = textField.text
        let newLength = text.characters.count + string.characters.count - range.length
        return newLength <= 20
    }

您可以使用以下内容:

            if displayName.characters.count > 20 {
                displayName = (displayName as NSString).substringToIndex(20)
                displayName.appendContentsOf("...")
            }

您可以使用以下内容:

            if displayName.characters.count > 20 {
                displayName = (displayName as NSString).substringToIndex(20)
                displayName.appendContentsOf("...")
            }

尝试更改最初我想要75,但忘记更改它,当我中断时它什么也不会发生。尝试更改最初我想要75,但忘记更改它,当我中断时它什么也不会发生。不起作用,1当我中断函数上的点时什么也不会发生,2我使用的是文本视图而不是文本字段不起作用,1当我在函数上中断点时,什么也没有发生,2我使用的是文本视图而不是文本字段