簡體   English   中英

將子視圖添加到UIViews數組?

[英]Adding subviews to an array of UIViews?

我有一個滾動視圖,上面有一個主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的數組進行了嘗試,所有這些都只填充了第一個視圖

即使我嘗試了

UIView *vw = [UIView new];
vw.frame = main.frame;
[vw setBackgroundColor:[UIColor blackColor]];
return vw;

不幸的是,同樣的結果。

在此處輸入圖片說明

如果我理解正確,則想為循環中的每個子視圖添加黑色覆蓋。 在這種情況下,您應該使用父視圖的bounds屬性,因為子視圖是相對的,它是父視圖。

更改此行:

UIView *vw =[[UIView alloc]initWithFrame:main.frame];

對此:

UIView *vw =[[UIView alloc]initWithFrame:main.bounds];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM