2013-01-17 22 views
4

在當執行通知被調用的方法:UILocalNotification - 如何發現用戶操作是否來自通知中心?

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification 

有沒有一種方法來發現通知是否從用戶敲擊在通知中心警報來了,或者是否接收到警報,而應用正在運行?

原因是:我想在用戶點擊提醒時將用戶指向特定頁面。這種方法如果警報響起,同時用戶在應用程序(因此,他們並沒有挖掘通知中心警報)內上述被調用,我不希望他們踢到另一個屏幕。

但是,如果應用程序正在運行,或者在後臺,他們已經拉下通知中心,我很想帶他們到一個特定的屏幕,同樣的方法被調用在這些情況下。

回答

4

你不能,不幸的是,做的正是你想做的事。你能來最接近的是

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification 
{ 
    if (application.applicationState == UIApplicationStateActive) 
     // They didn't come from the notification area 
    else 
     // They did 
} 

不幸的是,在接收警報提供上下文信息。

+1

謝謝!完美的作品。 – user1366911

相關問題