代码之家  ›  专栏  ›  技术社区  ›  Warrior

如何在iPhone中检查手机是否有子视图?

  •  3
  • Warrior  · 技术社区  · 14 年前

    我是iPhone开发的新手。我有一个名为barview的视图,它作为子视图添加到单元格中,我想检查这样的条件

    if(cell has a subview barview)
    {
    do something.......
    }else 
    {
    do something......
    } 
    

    我怎么能这样检查?

    2 回复  |  直到 6 年前
        1
  •  14
  •   kennytm    14 年前

    最简单的方法是 barview 一个特殊的标签:

    barview.tag = 123221;
    

    然后查一下

    UIView* barview = [cell viewWithTag:123221];
    if (barview != nil) {
      ...
    }
    

    否则,您需要迭代 .subviews 数组并检查属性是否匹配,例如

    UIView* barview = nil;
    for (UIView* subview in cell.subviews) {
       if ([subview isKindOfClass:[BarView class]]) {
          barview = subview;
          break;
       }
    }
    if (barview != nil) {
      ...
    }
    
        2
  •  3
  •   Adam Wright    14 年前
    if (barView.superview == cell)
    {
       …