iPhone/iOS: Will there be called any method if a UIView is added as a subview

前端 未结 4 1638
情话喂你
情话喂你 2021-01-11 10:23

If I add a view as a subview like so

[self.view addSubview:mySubview];

Will there be called any method on mySubview, that I could override

相关标签:
4条回答
  • 2021-01-11 11:05

    exep for special purpose is far better to customize you view in init phase, you have all you need and (more important) is a synchronous call.

    0 讨论(0)
  • 2021-01-11 11:06

    Yes, There is a method which get called if one change the superview . you need to override the below method in your subview class.

    - (void)willMoveToSuperview:(UIView *)newSuperview
    - (void)didMoveToSuperview
    

    From UIView Doucumentation

    willMoveToSuperview:, didMoveToSuperview—Implement these methods as needed to track the movement of the current view in your view hierarchy.

    0 讨论(0)
  • 2021-01-11 11:10

    Adding a view to a (new) superview triggers

    - (void)willMoveToSuperview:(UIView *)newSuperview

    and

    - (void)didMoveToSuperview.

    See the UIView Reference for more.

    0 讨论(0)
  • 2021-01-11 11:19

    You can override these two:

    - (void)willMoveToSuperview:(UIView *)newSuperview
    - (void)didMoveToSuperview
    

    Take a look in the documentation for UIView for similar methods.

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