我在静态TableViewcells中静态放置了很多文本字段。如何在不创建每个文本字段的引用插座的情况下访问其中的文本?我试过拍摄细胞的子视图。它不起作用。任何替代方案?
我试过这个。它不起作用。
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [super tableView:tableView
cellForRowAtIndexPath:indexPath];
for (UIView *subview in [cell subviews]){
if([subview isKindOfClass:[UITextField class]]){
UITextField *inputField = (UITextField *)subview;
NSLog(@"%@",inputField.text);
}
}
return cell;
}
答案 0 :(得分:1)
您可以使用IBOutletCollection。这使得您可以将它们全部连接到一个数组,您可以通过索引访问它们,或者使用setValue:forKey:一次性解决所有问题。
答案 1 :(得分:0)
您可以随时遍历单元格的每个子视图以查找UITextField
。类似的东西:
NSArray *subviews = [cell subviews];
for (view in subviews) {
if([view isKindOfClass:[UITextField class]]) {
//Do what you want with your UITextField
}
}
答案 2 :(得分:0)
请按照以下步骤操作:
将tag
设置为textField
:
textField.tag = kTextFieldTag;
使用subView
cell
tag
UITextField *refTextField = [cell viewWithTag:kTextFieldTag];
在这里,kTextFieldTag
是不变的。