我一直在嘗試使用insertSubview:atIndex:
下一個又一個插入子視圖。問題是大多數情況下,不是具有較高索引的視圖,而是最後添加的視圖。我注意到,如果我選擇索引0和1,這工作得很好,但在我的情況下,一個視圖需要至少在索引12和另一個需要在上面。的Xcode - insertSubview:atIndex:不工作,因爲我預料到
下面是一些代碼爲例:
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, 100, 100, 100)];
[email protected]"LABEL";
[label setBackgroundColor:[UIColor whiteColor]];
[self.view insertSubview:label atIndex:13];
UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn.frame=CGRectMake(20, 100, 100, 100);
[btn setBackgroundColor:[UIColor whiteColor]];
[self.view insertSubview:btn atIndex:12];
我知道我可以插入按鈕後標籤,但在我的情況下,不會解決問題。
我在做什麼錯?
非常感謝您的幫助。
你確定你有12個以上的子視圖嗎? – Nekto
我知道在IB有一個選項Send to Back,它將它放到視圖的最底部,允許您對事物進行分層,但不確定在代碼中確切地調用它。可能值得研究。 –
@Nekto它有多少我已經有子視圖?我沒有得到在索引插入的邏輯。如果我在索引1000插入會發生什麼?我希望它能像CSS中的z-index一樣工作,但顯然並非如此。 – matteok