我的屏幕上有多个UITextField
和UITextView
s。
即使结束编辑UITextField
的“官方”方法是触摸键盘上的“完成”键,UITextView
的“官方”方法是触摸外部完成按钮 - 我支持两者 - 我无法通过简单地触摸其他控件来阻止用户切换到另一个文本字段或文本视图。
如果正在编辑的当前控件是UITextField
,则此方法可以正常工作。当用户触摸第二个控件时,为当前文本字段调用TextFieldDidEndEditing:
,我可以处理该字段中的数据。
但是,如果当前控件是UITextView
,则当用户触摸另一个控件时,textViewShouldEndEditing
和textViewDidEndEditing
都不会被调用。导致它们被调用的唯一方法是在触摸第二个控件时进行显式ResignFirstResponder
,但这会导致键盘被解除,因此新触摸被有效忽略(用户必须触摸新的字段再次恢复编辑)。
当触摸另一个控件时,有没有办法让UITextView
表现得像UITextField
?
答案 0 :(得分:0)
- (void)textViewDidBeginEditing:(UITextView *)textView
{
if (textView = (your text view property)
{
//do something
}
}