iOS中调整view层级位置的两个属性

Posted wangxiaoqi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS中调整view层级位置的两个属性相关的知识,希望对你有一定的参考价值。

控件的层级关系和你加入到父视图的顺序有关,也就是先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];  

 

以上是关于iOS中调整view层级位置的两个属性的主要内容,如果未能解决你的问题,请参考以下文章

DAOServiceController及View层级结构梳理

iOS 设置view的层级关系

mask层--- ios开发view圆角属性的layer层的实质

ios view的frame和bounds之区别(位置和大小)

ios view的frame和bounds之区别(位置和大小)

ios view的frame和bounds之区别(位置和大小)