iOS中調整view層級位置的兩個屬性

2022-08-05 05:30:13 字數 846 閱讀 5279

控制項的層級關係和你加入到父檢視的順序有關,也就是先addsubview至父檢視的,層級越低,會被後加入的遮蓋。 

可以通過以下函式改變子檢視的層級

將乙個uiview顯示在最前面:

- (void)bringsubviewtofront:(uiview *)view;

將檢視顯示在下面:

- (void)sendsubviewtoback...

例如下面的**示例:

uiview *view1 = [[uiview alloc] initwithframe:cgrectmake(10, 50, 100, 50)];  

view1.backgroundcolor = [uicolor bluecolor];

[self.view addsubview:view1];

uiview *view2 = [[uiview alloc] initwithframe:cgrectmake(15, 55, 100, 50)];

view2.backgroundcolor = [uicolor graycolor];

[self.view addsubview:view2];

//到這裡位置時 view1 會在下面 view2會在上面 因為view2是後加到檢視上的

// 下面這行**能夠將view2 調整到父檢視的最下面

[self.view sendsubviewtoback:view2];

//下面這段**是 將view1調整到父檢視的最上面

[self.view bringsubviewtofront:view1];

View 的位置引數

view 的位置主要由它的四個頂點來決定,分別對應於view的四個屬性 top left right bottom,其中top是左上角縱座標,left是左上角橫座標,right是右下角橫座標,bottom是右下角縱座標。需要注意的是,這些座標都是相對於view的父容器來說的,因此它是一種相對座標,v...

View的位置引數

view的位置主要由它的四個頂點來決定,分別對應於view的四個屬性 top left right bottom。需要注意的是,這些座標都是相對於view的父控制項來說的,因此它是一種相對座標。上圖很清楚的展示了view的位置座標和父容器的關係,motionevent獲取位置與view提供的方法的關...

view的大小,位置

下面有幾個比較重要的關於view的大小以及位置的屬性 uiscreen.mainscreen.bounds 不包括狀態列的大小 由於狀態列高度為20,所以height也就比bounds小20了 當狀態列隱藏時,也就跟bounds一樣了。uiview的大小與位置,大小有本uiview.bounds.s...