哪个事件处理对象成为/失去第一响应者状态?

时间:2011-06-08 11:02:02

标签: cocoa-touch ios

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

什么行动处理成为/失去第一响应者?或者也许只有在UITextView具有焦点时才有更好的方式来显示UILabel?

2 个答案:

答案 0 :(得分:5)

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

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

答案 1 :(得分:4)

还可以使用UITextFieldDelegate方法。

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

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