如何知道哪个uiview用户正在使用

时间:2011-12-31 07:50:09

标签: objective-c push-notification uialertview uiapplicationdelegate

我实施推送通知,并在用户使用应用时对其进行管理。因此会出现一个警报视图,在视图上单击它必须重定向到uiview。现在,如果用户在警报即将到来时显示uiview,我怎么能知道顶部的uiview?我如何更新uiview当前?警报显示在metod didReceiveRemoteNotification中的应用程序委托中。 Thankss

编辑: 我想做这样的事情:

UiviewController current* = [delegate getCurrentView];
if(current.toString=="NotificationView"){
   [current update:notificationText];
}else{
   saveNotification;
   goToNotificationView;
}

1 个答案:

答案 0 :(得分:1)

我想很可能你的主UINavigationController中有一个window(可以是UITabBarController等),但如果你的主要UINavigationController window然后您可以使用UINavigationController检查[self.navigationController topViewController];的顶级视图控制器,或者还可以检查返回数组的UINavigationController viewControllers堆栈您在UINavigationController中推送的所有视图控制器,并且可以使用array获取[[self.navigationController viewControllers] lastObject];的最后一个对象,这是您的俯视图。

如果您的主UITabBarController中有window,那么您可以使用UINavigationController获取[[self.tabbarcontroller viewControllers] objectAtIndex:[self.tabbarcontroller selectedIndex]];的实例(如果在那里)并且可以执行上述操作获得顶视图的步骤。