Iphone 目标c子视图顺序
我是一名初级程序员 我面临程序中某些子视图未显示的问题, 不知道是addsubview顺序问题还是其他问题。 希望有人能提供建议或解决方案。谢谢大家Iphone 目标c子视图顺序,iphone,objective-c,Iphone,Objective C,我是一名初级程序员 我面临程序中某些子视图未显示的问题, 不知道是addsubview顺序问题还是其他问题。 希望有人能提供建议或解决方案。谢谢大家 for (int i = 0; i < NUM_DISHES; i++) { UIImageView* img_steps = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg
for (int i = 0; i < NUM_DISHES; i++) {
UIImageView* img_steps = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg", i]]];
//IMPORTANT: The i*W_IPAD means that 1st 0*1024 , 1*1024 , 2*1024.............and so on
[img_steps setFrame:CGRectMake(W_IPAD, 0, W_IPAD , H_UPFR)];
UIImageView* imageset = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[ary_img objectAtIndex:i]]];
[imageset setFrame:CGRectMake(89, 9, H_INGREPHOTO, W_INGREPHOTO)];
[ary_image addObject:imageset];
//ingredient amount section
UILabel* lbl_amt = [[UILabel alloc] initWithFrame:CGRectMake(128, 177, 190, 33)];
[lbl_amt setText:[ary_amount objectAtIndex:i]];
[lbl_amt setFont:[UIFont systemFontOfSize:25]];
[lbl_amt setTextColor:[UIColor blackColor]];
[lbl_amt setBackgroundColor:[UIColor clearColor]];
[ary_amt addObject:lbl_amt];
//method section
UILabel* lbl_method = [[UILabel alloc] initWithFrame:CGRectMake(596, 93, 130, 32)];
[lbl_method setText:[ary_meth objectAtIndex:i]];
[lbl_method setBackgroundColor:[UIColor clearColor]];
[lbl_method setFont:[UIFont systemFontOfSize:30]];
[lbl_method setTextColor:[UIColor blackColor]];
[ary_method addObject:lbl_method];
//alpha bar step number step number section
UILabel* lbl_numberstep = [[UILabel alloc] initWithFrame:CGRectMake(90 + (130 * i), 5, W_NUMBERSTEP, H_NUMBERSTEP)];
[lbl_numberstep setText:[NSString stringWithFormat:@"%d",i + 1]];
[lbl_numberstep setFont:[UIFont systemFontOfSize:20]];
[lbl_numberstep setBackgroundColor:[UIColor clearColor]];
[lbl_numberstep setTextColor:[UIColor blackColor]];
[self.view addSubview:img_steps];
[alpha_bar addSubview:lbl_numberstep];
[alphaframe addSubview:[ary_method objectAtIndex:i]];
[alphaframe addSubview:[ary_amt objectAtIndex:i]];
[alphaframe addSubview:[ary_image objectAtIndex:i]];
}
// Section --- Add Subview
[self.view addSubview:background];
[background addSubview:main_view];
[main_view addSubview:alpha_bar];
[main_view addSubview:alphaframe];
[main_view addSubview:but_transit_to_a]; //can add to the main_view
[main_view addSubview:left_buttom];
[main_view addSubview:right_buttom];
[alpha_bar addSubview:bar];
[alpha_bar addSubview:lbl_lastnum];
[alphaframe addSubview:but_transit_to_c];
}
return self;
}
for(inti=0;i
要将子视图置于前面,可以使用[yourMainView将子视图置于前面:yoursubview]
。如果此时未显示子视图,请检查是否已正确设置子视图的帧
,以及隐藏=否
视图。子视图数组保存索引0中最底部的视图,并按与其“z索引”相关的顺序保存视图。所以[myView.subviews lastObject]
将始终在所有其他视图和[myView.subviews objectAtIndex:0]前面给出视图代码>将具有该数组中所有视图下方的视图
从:
可以使用此属性检索与关联的子视图
自定义视图层次结构。阵列中子视图的顺序
反映其在屏幕上的可见顺序,视图的索引为0
是最后面的视图。对于在UIKit和其他文件中声明的复杂视图
在系统框架中,通常会考虑视图的任何子视图
私密,随时可能更改。因此,你不应该
尝试检索或修改这些类型的子视图
系统提供的视图。如果您这样做,您的代码可能会在将来的某个时间中断
系统更新
向我们展示你的代码,你是如何计算子视图的框架的。如果你展示你的代码,我们可以很容易地帮助我们AddSubViews的数组有什么问题?您的.h文件中是否有代码?我对您的问题投了赞成票,因为其中一个答案对我很有帮助。我发现,当人们因为无法理解问题的内容而对投票问题投反对票时,这很烦人。显然有人能帮助你。所以不需要向下投票。对不起,蒂姆,我可以问一下,是在我[mainview addsubview:newview]之后,然后我输入你写的代码吗?是的,在你添加子视图之后,很抱歉,哈哈,我真的不明白,真的很抱歉,你可以简单地告诉我解决方案吗?也许我可以很容易地理解这个意思。addSubview的数组有什么问题