iPhone/iOS: Will there be called any method if a U

2019-02-16 12:14发布

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 to add some custom behavior?

4条回答
叛逆
2楼-- · 2019-02-16 13:07

You can override these two:

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

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

查看更多
Viruses.
3楼-- · 2019-02-16 13:10

Adding a view to a (new) superview triggers

- (void)willMoveToSuperview:(UIView *)newSuperview

and

- (void)didMoveToSuperview.

See the UIView Reference for more.

查看更多
手持菜刀,她持情操
4楼-- · 2019-02-16 13:12

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.

查看更多
等我变得足够好
5楼-- · 2019-02-16 13:13

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.

查看更多
登录 后发表回答