Difference between addSubview and insertSubview in UIView class

后端 未结 4 642
情书的邮戳
情书的邮戳 2020-12-02 11:16

What is the difference between addSubview and insertSubView methods when a view is added programmatically?

相关标签:
4条回答
  • 2020-12-02 11:25

    I don't think there is a difference. addSubview: is simple a convenient method for

    [view insertSubview:aView atIndex:[view.subviews count]]
    
    0 讨论(0)
  • 2020-12-02 11:35

    1.addSubview add subview in array then add in View'slayer

    - (void)addSubview:(UIView *)subview
    {
        [_subviews addObject:subview];
        [_layer addSublayer:subview.layer];
    }
    

    }

    2.While insertSubview add your view as subview then call [_layer insertSublayer:subview.layer atIndex:index];

    - (void)insertSubview:(UIView *)subview atIndex:(NSInteger)index
    {
      [self addSubview:subview];
      [_layer insertSublayer:subview.layer atIndex:index];
    }
    
    0 讨论(0)
  • 2020-12-02 11:40

    The only difference is in where the view is added: whether it is the frontmost view (addSubview:), or it is before the 5th subview, (insertSubview:atIndex:) or if it is immediately behind another subview (insertSubview:aboveSubview:).

    0 讨论(0)
  • 2020-12-02 11:47

    Using insertSubView: you can specify the index, which determines z-order of views. A view with a higher index lies above those with lower indices.

    0 讨论(0)
提交回复
热议问题