可可触摸-处理对象成为/失去第一响应者状态的事件



我有一个UITextView,我想在它收到First Responder状态后显示UILabel,并在UITextView丢失时隐藏UILabel。

如何处理成为/失去第一响应者?或者,只有当UITextView有焦点时,才有更好的方法显示UILabel?

还有UITextFieldDelegate方法可供使用。

(BOOL)textFieldShouldEndEditing:(UITextField *)textField;
(void)textFieldDidEndEditing:(UITextField *)textField;

这些将在UITextField失去第一个响应程序状态之前和之后调用。

UIView是UIResponder的一个子类。当您的视图成为第一响应者时,它将发送一个-(BOOL)becomeFirstResponder,当它丢失时,它会发送一个-(BOOL)resignFirstResponder。您还可以在这两个事件之前从–(BOOL)canBecomeFirstResponder–(BOOL)canResignFirstResponder执行一些处理。所有这些方法都是在UIResponder上定义的。

在所有情况下,假设你确实想成为(或辞职)第一响应者,你应该对这些消息返回YES。

最新更新