我UITextView启用了滚动功能,我可以更改内部文本的字体和大小.那么,我该如何设置文本限制?我已经尝试设置最大行数和最大字符数,但它不起作用,因为我需要设置文本的大小限制,我该怎么做?
Chr*_*örz 10
你必须实现UITextViewDelegate:
class ViewController: UIViewController, UITextViewDelegate {
Run Code Online (Sandbox Code Playgroud)
然后在viewDidLoad方法中设置textView的委托:
yourTextView.delegate = self
Run Code Online (Sandbox Code Playgroud)
之后,您可以使用该shouldChangeTextInRange方法检查字母:
func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool {
let maxtext: Int = 140
//If the text is larger than the maxtext, the return is false
// Swift 2.0
return textView.text.characters.count + (text.characters.count - range.length) <= maxtext
// Swift 1.1
// return countElements(textView.text) + (countElements(text.length) - range.length) <= maxtext
}
Run Code Online (Sandbox Code Playgroud)
这个解决方案的好处是,你甚至可以控制剪切/复制和粘贴.因此,用户无法通过复制欺骗该字段接受更多字母.
| 归档时间: |
|
| 查看次数: |
7900 次 |
| 最近记录: |