【发布时间】:2011-07-21 19:26:01
【问题描述】:
通过子视图枚举查找文本字段的正确方法是什么?
NSMutableArray *mutableTFs = [[NSMutableArray alloc] init];
for (UIView *view in [self.view subviews]) {
if ([view isKindOfClass:[UITextField class]]) {
[mutableTFs addObject:view];
}
}
或
NSMutableArray *mutableTFs = [[NSMutableArray alloc] init];
for (UITextField *textField in [self.view subviews]) {
[mutableTFs addObject:textField];
}
我知道这不是正确的措辞,但我不明白的是,如果它是顶级方法,您如何将其从视图“转换”为文本字段?
【问题讨论】:
-
你之前的问题here,以防有人感兴趣。
-
"你如何将它从视图“转换”为文本字段?" - UITextField 继承自 UIView,所以每个 UITextField 都是一个 UIView。您没有将其转换为 UIView,而是将其键入,告诉编译器 UIView 上的任何方法都将适用于该对象。如果您要在迭代对象时使用 UITextField 方法,请使用第二种方法,使用下面描述的更正函数,不要使用您在帖子中使用的方法:P
标签: ios uiview uitextfield fast-enumeration