textViewのdelegateモニタユーザの正しい姿勢
589 ワード
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
NSString *targetString = [textView.text stringByReplacingCharactersInRange:range withString:text];
if (targetString.length > _inputCount) {
textView.text = [targetString substringToIndex:_inputCount];
return NO;
}
return YES;
}
このような書き方と同様に、ユーザ入力が要求に合わない場合(一度に大量のテキストを貼り付けるなど)、この方法はNOを返し、UIに問題は生じない.
- (void)textViewDidChange:(UITextView *)textView
メソッドでテキストを監視/修正すると、レイアウトの問題が発生する可能性があります.