从superView获取特定类型视图的所有元素

时间:2013-06-27 13:10:43

标签: iphone ios objective-c

我有UITableView

UITableView包含

  1. UITextView
  2. UICollectionView
  3. UILabel
  4. 现在,我想从UILabel获取所有superView

    怎么做?

3 个答案:

答案 0 :(得分:6)

您可以使用以下代码获取TextView的所有子视图:

for(UIView * subView in myTextView.subviews ) // here write Name of you TextView 
{ 
     // Here You can Get all subViews of your TextView.
    // But For Check subview is UILabel or not ? write following code also.

        if([subView isKindOfClass:[UILabel class]]) // Check is SubView Class Is UILabel class
        {
            // You can write code here for your UILabel;
        }
}

答案 1 :(得分:0)

您可以浏览公共超级视图的所有子视图,只将类添加到UILabel的数组中添加:

NSMutableArray *labels = [NSMutableArray array];
for (UIView *v in someSuperview.subviews) {
    if ([v isKindOfClass:[UILabel class]]) {
        [labels addObject:v];
    }
}

然后labels将包含您视图的所有UILabel子视图。

答案 2 :(得分:0)

给你的uilabel一个标签:

mylabel.tag =101;
then get your back your label by:
UILabel *mylabel = (UILabel*)[self.view viewWithTag:101];
你很高兴。