限制 IBOutlet TextView 的字符数,Swift

Limit the number of Characters for an IBOutlet TextView, Swift

希望有人能指导我,帮助我!

我正在从 API 中检索一些字符数据,并将该值存储在名为 UITextDisplayIBOutlet 类型的 UITextView 中。我想要做的就是显示该数据中的 300 个字符或更少,但出于某种原因不允许我这样做。

提前致谢!!

我还将 UITextField 委派给 ViewController 所以它应该可以工作并且我的代码编译得很好。

extension ViewController: UITextViewDelegate
{
    func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool
    {
        textView.text = UITextDisplay.text

        let newText = (textView.text as NSString).replacingCharacters(in: range, with: text)

        return newText.count < 300

    }
}

此外..有没有办法从字符的末尾删除“+2637 个字符”??

期待任何决议! 阿毛里,

请看下面的问题

Set the maximum character length of a UITextField (In my answer you can also see for UITextView)

与其到处写重复代码,不如创建 UITextViewUITextField 的扩展来设置最大长度

更新:

评论说明:

首先,您需要从当前的视图控制器中删除 UITextView 委托方法。因为 UITextView 的扩展名在内部使用 UITextViewDelegate

注意:Delegate是一对一的通信。在您的情况下,如果您在当前视图控制器中实现委托,则 UITextView 的扩展不起作用。