我无法弄清楚哪个UITextField
是当前的第一响应者。
我想做的是,如果用户单击特定的内容,则设置一个布尔值UITextField
。因此,要做到这一点,我需要能够判断这个特定的文本字段是否已成为第一响应者。
我知道如何设置第一响应者,但只是不确定如何判断字段是否实际上已成为第一响应者。
[...]但只是不确定如何判断一个字段是否实际上已成为
急救人员。
UIView
继承了isFirstResponder
方法来自UIResponder
它告诉你这一点。
查找第一响应者的最简单方法,无需检查各个控件/视图,也无需针对所有不同类型的可能的第一响应者使用多种方法,只需在UIView
这增加了一个findFirstResponder
method:
UIView+FirstResponder.h
#import <UIKit/UIKit.h>
@interface UIView (FirstResponder)
- (UIView *)findFirstResponder;
@end
UIView+FirstResponder.m
#import "UIView+FirstResponder.h"
@implementation UIView (FirstResponder)
- (UIView *)findFirstResponder
{
if ([self isFirstResponder])
return self;
for (UIView * subView in self.subviews)
{
UIView * fr = [subView findFirstResponder];
if (fr != nil)
return fr;
}
return nil;
}
@end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)