将viewWithTag用于tableview内的单元格内的视图

时间:2013-06-17 10:37:36

标签: ios objective-c ios5 ios6

这是我的布局: 我有一个TableView - >细胞 - >在单元格内部,我有一些UITextField和一个UIView,还有一些UITextField s。当我想用cellForRowAtIndexPath内的数据填充它时,我创建了一个简单的for循环来填充它们。我的问题是,我无法使用UITextField访问单独UIView内的viewWithTag(我不想按照其出口名称分配每个UITextField,这就是为什么我正在使用for循环)。

因此,此代码仅适用于单元格内的UITextField,但不适用于单元格内部视图内的for (int i=1;i<15;i++) { UITextField *temp = (UITextField *)[self.view viewWithTag:i]; temp.text = @"something"; }

UITextField

我不明白的另一件事是,如果我记录 UITextField *temp = (UITextField *)[self.view viewWithTag:8]; //8 is a tag for a `UITexiField inside the view that is in the cell NSLog(@"temp: %@",temp); temp.text = @"something"; NSLog(@"temp: %@",temp); baseClass = UITextField; frame = (0 12; 35 35); text = ''; clipsToBounds = YES; autoresize = RM+BM; tag = 8; gestureRecognizers = <NSArray: 0x7578650>; layer = <CALayer: 0x7577650>> baseClass = UITextField; frame = (0 12; 35 35); text = 'something'; clipsToBounds = YES; autoresize = RM+BM; tag = 8; gestureRecognizers = <NSArray: 0x7578650>; layer = <CALayer: 0x7577650>> ,我可以看到它充满了数据,但我没有在屏幕上看到它。

{{1}}

但我不会在屏幕上看到它。

2 个答案:

答案 0 :(得分:0)

  1. 分配temp后,您必须遍历UITextField中的视图UIViewtemp,以了解您想要的内容。

  2. 您是将它们添加为subview吗?通常这就是为什么他们没有出现甚至认为他的内容如下:

    [self.view addSubview:temp];
    

答案 1 :(得分:0)

下载可用类别here

使用方法

- (NSArray *)viewsWithTag:(NSInteger)tag;

确保所有文本字段的标签号都与方法返回数组相同。