我有一个滚动视图,我有一个主要的UIView。这个主要的UIView中有一系列UIViews。
我想在此子视图上添加测试视图
for (NSUInteger i = 0; i<self.maxPage+1; i++) {
CanvasBaseView *view =[[CanvasBaseView alloc]initWithFrame:CGRectMake(0, (self.canvas.height.floatValue+NAPKIN_PADDING)*i, self.canvas.width.floatValue,self.canvas.height.floatValue)];
[view addSubview:[self setDrawView:view]];
}
-(UIView*)setDrawView:(UIView *)main{
UIView *vw =[[UIView alloc]initWithFrame:main.frame];
[vw setBackgroundColor:[UIColor blackColor]];
return vw;
}
但是当我这样做时,只有第一个视图有我的新黑色背景视图。我尝试使用2,6,10的数组,所有这一切只有第一个视图正在填充 p>
即使我尝试了这个
UIView *vw = [UIView new];
vw.frame = main.frame;
[vw setBackgroundColor:[UIColor blackColor]];
return vw;
不幸的是同样的结果。
答案 0 :(得分:0)
如果我理解正确,您想为循环中的每个子视图添加黑色叠加层。在这种情况下,您应该使用父视图的bounds属性,因为子视图是相对于父视图的。
更改此行:
UIView *vw =[[UIView alloc]initWithFrame:main.frame];
对此:
UIView *vw =[[UIView alloc]initWithFrame:main.bounds];