相关疑难解决方法(0)

如何从AppDelegate获取navController.

我想知道,如何从AppDelegate = [[UIApplication sharedApplication] delegate]iPhone编程中获取navController .例如,在我们引用AppDelegate的其他viewController中.

在applicationDelegate.h中,我们有:

UINavigationController *navController;
Run Code Online (Sandbox Code Playgroud)

以及applicationDelegate.m中的以下内容

- (void)applicationDidFinishLaunching:(UIApplication *)application {    

   [window addSubview: navController.view];
   [window makeKeyAndVisible];
}
Run Code Online (Sandbox Code Playgroud)

无论如何从mainWindow获取navController:

UIWindow *mainWindow = [appDelegate window];
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uinavigationcontroller uiapplicationdelegate ios

6
推荐指数
1
解决办法
3万
查看次数

从didReceiveRemoteNotification中更改视图

作为iPhone开发的新手,我正慢慢地到达那里,但有时简单的事情似乎让我感到困惑.

我的应用程序包含7个非常不同的视图.它被实现为没有导航控制器的基于窗口的应用程序.导航由每个视图控制器单独管理,我使用中央数据存储库通过应用程序提供数据.

我用 :-

DetailView *viewDetail = [[DetailView alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:viewDetail animated:YES];
Run Code Online (Sandbox Code Playgroud)

改变观点.显然,在所有情况下,这都是在当前视图的控制器内执行的.

但是,我现在已经向应用程序添加了推送通知.收到Push后,userInfo数据在主AppDelegate中可用,并执行didReceiveRemoteNotification.我希望将应用程序强制进入上面描述的Detailview,并将其传递给userInfo中的一个值.

当然,一旦执行第二行,我就会得到一个很好的SIGABRT.我认为这是因为当前活动的视图不是自我的.如何从应用程序委托中放弃当前视图以支持DetailView?当前视图可能是7个视图中的任何一个,包括DetailView,我想用新数据刷新.

在此先感谢Chris Hardaker

iphone push-notification

1
推荐指数
1
解决办法
4355
查看次数