-5

我在 cuttom 单元格中显示一个按钮UITableview。不需要时如何隐藏该按钮。例如:我在按钮上显示接收到的图像计数。如果计数为零,我需要从单元格中隐藏该按钮。

contactviewController.m
if (![[arr objectAtIndex:4] isEqualToString:@"0"]) {
            [cell1 setImg:[arr objectAtIndex:4]];
        }
Customcell.m

-(void)setImg:(NSString *)_text
{

        imgView.titleLabel.textColor = [UIColor whiteColor];
        [imgView setTitle:_text forState:UIControlStateNormal];
    }
4

4 回答 4

0

您可以在您的cellForRowAtIndex方法中执行此操作。对于每行创建,都会调用此方法。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if(condition)
    {
        //show button
    }
    else
    {
        // don't show button
    }
}
于 2013-02-04T06:30:48.723 回答
0
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
 {
      if(noImagesFound)
      {
           yourCustomCellObject.buttonObject.hidden = YES;
      }
      else
      {
           yourCustomCellObject.buttonObject.hidden = NO;
      }
 }
于 2013-02-04T06:31:50.950 回答
0

您可以通过 xib 作为 IBOutlets 或通过设置框架并将按钮添加到单元格以编程方式在单元格中添加按钮。上述解决方案取决于您添加按钮的方式。如果您通过 xib 添加它作为插座,您可以执行以下任一操作。

任何视图都有一个称为标签的属性。您可以在按钮的属性检查器和-cellForRowAtIndexPath:调用中将标签值设置为

UIButton *button  =(UIButton*) [cell viewWithTag:9];

// your tag value (say 9)

和使用 [button setHidden:YES]隐藏 //NO to unhide在这里你不需要自定义类

  1. 如果您已经为同一个创建了自定义类,您可以通过两种方法通过编程或通过 xib 添加按钮。如果是 xib,则创建一个 IBOutlet 并使其成为自定义单元格的属性,以便您可以使用自定义单元格对象访问它。

如果您需要对创建的单元格进行更多控制,最好选择第二个选项。如果您已将其设为属性,则可以通过使用单元格的对象来访问它。

于 2013-02-04T06:47:08.860 回答
-2
  1. 创建 UITableViewCell.h 和 .m 文件。

  2. 在文件中创建一些变量,如 UILabel 和 UIImageView 对象,并使其成为 IBOutlet 并将它们与单元格 .xib 文件绑定。

  3. 在 UITableView 实现中,在“cellForRowAtIndexPath”中,您可以使用该自定义 UITableViewCell 类对象并使用 UILable 和 UIImageView 的合成变量并使用它来相应地显示或隐藏。

于 2013-02-04T06:32:25.060 回答