UIView可以知道它何时在屏幕上吗

Avn*_*arr 5 iphone objective-c uiview ios

我有UIView很多组件,如果要删除视图或弹出/按下其父视图控制器,我想更新其中的一些组件。是否有可能UIView获得此信息

类似于中的方法 UIViewController

-(void)viewWillAppear;
Run Code Online (Sandbox Code Playgroud)

想要像

-(void)UIViewWillAppear;
Run Code Online (Sandbox Code Playgroud)

编辑我看到的一些评论:

我会解释更多

但是我有一个特殊情况,即UIView需要在其顶部添加一个“浮动视图”(想象一个缩放/平移/滚动UISCrollView子类,其顶部具有浮动器),以便在滚动时,浮动视图保持相对位置到超级视图。我尝试重新计算该-(void)layoutSubviews方法内部的“漂浮物”的新来源,但重新放置时非常不稳定。为了解决此断断续续的问题,自定义UIView添加了浮动视图(理论上是其子视图)作为其超级视图的子视图(有点绕口令:))。现在,当删除自定义UIView(或将其包含的视图控制器推离屏幕时)时出现问题。特殊的UISCrollView如何从其superView中删除浮动视图。

Nic*_*sky 0

UIView 不会“随机”或在需要时出现/消失 - 您的视图控制器(或代码)对此进行控制。因此,您应该在显示它们时找出并调用您需要的代码。