0

我怎样才能label.text将视图的内部添加到UIScrollview但以特定顺序添加,每个标签都有一个连续的标签 1、2、3、4、5,这很重要,因为每个标签都需要保存在一个数组中命令。

问题是,当使用搜索时,它以不同的顺序发送标签,我该如何控制呢?

我要搜索的代码是:

for (UIView *addedView in [self.scrollView subviews]){
    for (UIView *sub in [addedView subviews])
    {
        if([sub isKindOfClass:[UILabel class]])
        {
            UILabel *myLabel = (UILabel *)sub;
            [array addObject:mylabel.text];
        }
    } 
}
4

2 回答 2

3
for (int i = 1 ;i <= [self.scrollView.subviews count] ;i++){
        UIView *myView = (UIView *) [addedView viewWithTag:i];

           if(myView && [myView isKindOfClass:[UILabel class]]){
           UILabel *label = (UILabel *)myView;
            [array addObject:label.text]; );
        }
    }
于 2012-11-05T11:38:09.180 回答
2

您为什么不根据他们携带的标签访问您的视图?

UIView* view = [self.scrollView viewWithTag:tag];

如果您遍历您定义的所有标签,这将允许您控制处理视图的顺序。否则,我怀疑这subviews将反映子视图的堆叠顺序。您可以尝试:

for (NSUInteger i = 1; i <= 5; ++i) {
    UIView* view = [self.scrollView viewWithTag:i];
    ...
}

更好的是,您还可以分配标签的标签,然后使用:

for (NSUInteger i = 1; i <= 5; ++i) {
    UIView* view = [self.scrollView viewWithTag:i];
    UILabel* myLabel = (UILabel*)[view viewWithTag:kLabelTag];
    ...
}
于 2012-11-05T11:31:31.403 回答