如果应用程序之前在后台,当调用 applicationDidBecomeActive 时,我如何选择刷新用户界面?
我希望当前 View Controller 始终是 Storyboard中的初始 View Controller 。我无法在我的主 AppDelegate.m 中获得指向 Storyboard的指针。
如何检查和确定当前显示的是哪个 View Controller ?
Best Answer-推荐答案 strong>
如果您只是想要一个指向 Storyboard的指针,那么您可以这样做:
UIStoryboard *sb = [[[self window] rootViewController] storyboard];
其中 rootViewController 实际上是 Storyboard 的初始 View Controller 。如果您希望此 Controller 成为当前 Controller (如您所说),那么您很好,但是如果您想实际更新您的 UI,那么我想您可以从委托(delegate)(在 applicationDidBecomeActive ),并注册每个可能有兴趣捕获它的 Controller ,以便它可以更新其 UI(或者只是添加 self 作为 UIApplicationDidBecomeActiveNotification 的观察者来捕获与您的代表捕获的相同...)。
PS。如果您的 rootViewController 是 UINavigationController 您可以像这样获得当前显示的 Controller :
id currentController = [[[self window] rootViewController] visibleViewController];
关于iphone - 如何检查并确定 Storyboard 中当前显示的 View Controller ?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/11203585/
|