从AppDelegate更改ViewController

时间:2013-11-14 16:38:35

标签: ios objective-c

我在收到通知时尝试从ViewController更改AppDelegate

这是我到目前为止所得到的:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{

    if (application.applicationState == UIApplicationStateInactive)
    {
        self.convViewController = self.window.rootViewController;

    }
    else if(application.applicationState == UIApplicationStateActive)
    {
        self.convViewController = self.window.rootViewController;

    }
}

我正在引用我的ViewController(在.h文件中):

@property (strong, nonatomic) ConvViewController *convViewController;

然而,当我点击通知时没有任何反应。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

集:

self.window.rootViewController = self.convViewController;

你指的是错误的财产。您需要设置窗口的视图控制器以更改窗口显示的视图控制器

在上面的代码中,你设置你的convViewController是一个指向窗口rootViewController的指针。

答案 1 :(得分:0)

切换你的逻辑:

self.window.rootViewController = self.convViewController;