JAH*_*lia 20 iphone objective-c ios
我知道becomeFirstResponder
设置焦点在控件上的方法,但是如何知道该控件(例如UITextView
)当前是否关注它?
编辑:问题是我希望(例如)在获得焦点时更改UITextView的背景颜色,我应该在哪里准确地调用isFirstResponder?在这种情况下我应该使用通知吗?
非常感谢提前.
Meh*_*tri 43
if([txtView isFirstResponder]){
//Has Focus
} else {
//Lost Focus
}
Run Code Online (Sandbox Code Playgroud)
这是UITextView的委托方法,
- (BOOL)textViewShouldBeginEditing:(UITextView *)aTextView{
//Has Focus
return YES;
}
Run Code Online (Sandbox Code Playgroud)
这是失去焦点
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
if ([text isEqualToString:@"\n"]){
//Lost Focus
[textView resignFirstResponder];
}
return YES;
}
Run Code Online (Sandbox Code Playgroud)
使用 UITextField 委托方法。当 textField 获得焦点时(第一响应者)
- (void)textFieldDidBeginEditing:(UITextField *)textField;
将被解雇,
当它失去焦点时
- (void)textFieldDidEndEditing:(UITextField *)textField;
将被解雇。
归档时间: |
|
查看次数: |
23009 次 |
最近记录: |