隐藏自定义单元格图像

时间:2013-02-04 06:28:04

标签: iphone xcode custom-cell

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

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 个答案:

答案 0 :(得分:0)

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

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if(condition)
    {
        //show button
    }
    else
    {
        // don't show button
    }
}

答案 1 :(得分:0)

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
 {
      if(noImagesFound)
      {
           yourCustomCellObject.buttonObject.hidden = YES;
      }
      else
      {
           yourCustomCellObject.buttonObject.hidden = NO;
      }
 }

答案 2 :(得分:0)

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

任何名为tag的视图都有一个属性。您可以在属性检查器中为按钮设置标记值,并在-cellForRowAtIndexPath:调用中设置

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

// your tag value (say 9)

并使用[button setHidden:YES]隐藏/ /NO to unhide此处您不需要自定义类

  1. 如果您已为其创建自定义类,则可以通过编程方式或通过xib通过两种方法添加按钮。如果是xib,则创建一个IBOutlet并使其成为自定义单元格的属性,以便您可以使用自定义单元格对象访问它。
  2. 如果您需要更多地控制您创建的单元格,最好选择第二个选项。如果您已将其设为属性,则可以使用单元格的对象访问它。

答案 3 :(得分:-2)

  1. 创建UITableViewCell.h和.m文件。

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

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