字數及游標只能在UITextView bound的範圍內
字數可以藉由底下的shouldChangeTextInRange來處理,若超過剛填入的字就去除,但若要讓游標到最後一行就停住,就得由textViewDidChange來控制,兩個的內容都一樣,但作用的點不同。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
//防止使用者輸入字數超過輸入區
if (textView.contentSize.height > textView.frame.size.height + 10) {
textView.text = [textView.text substringToIndex:[textView.text length]-1];
return NO;
}
return YES;
}
- (void)textViewDidChange:(UITextView *)textView
{
//防止Enter鍵會讓游標下移超過輸入區
if (textView.contentSize.height > textView.frame.size.height + 10) {
textView.text = [textView.text substringToIndex:[textView.text length]-1];
// textView.contentSize = textView.frame.size;
}
}
參考網址:
UITextView 限制行数解决方案
如何实现对UITextField ,UITextView等输入框的 字数限制
沒有留言:
張貼留言