0

在我的应用程序中,我有一个表格视图,每个行/单元格上都有一个 imageView。每个 imageView 已经分配了它的图像,每个 imageView 的.hidden属性都设置为,YES直到用户另外指定。我的问题是:我如何测试以查看是否有任何图像hidden/未隐藏。如果 1 个单元格有可见图像,我想调用一个方法。如果所有图像都消失了,我想采用不同的方法,有什么想法吗?

我正在尝试以下方式:

if ([self.hand.showBadge boolValue] == YES) {
    self.handView.hidden = YES;
}
else{
    self.handView.hidden = NO;
}

但不幸的是它没有工作。

谢谢!

4

1 回答 1

2

一种方法是在单元格中标记 imageView,然后根据需要使用该标记遍历单元格。

在 tableView:cellForRowAtIndexPath 中,添加:

myImageView.tag = MY_CELL_IMAGEVIEW_TAG;

或者,如果使用情节提要,您可以只在原型单元(或静态单元)中设置图像视图的标签。

然后,如果要检查可见单元格,请在要检查图像视图的位置插入以下代码。

BOOL cellImageViewsAreHidden = YES;

for (UITableViewCell *cell in self.tableView.visibleCells) {
  UIImageView *cellImageView = [cell viewWithTag:MY_CELL_IMAGEVIEW_TAG];
  if ([cellImageView isHidden] == NO) {
    cellImageViewsAreHidden = NO;
    break;
  }  
}

(cellImageViewsAreHidden) ? 'method for all hidden' : 'method for not all hidden' ;
于 2013-01-04T06:10:13.033 回答