如何在目标C中退出应用程序时检索数据

时间:2013-05-20 12:33:22

标签: ios objective-c uitableview didselectrowatindexpath nsindexpath

我有一个应用程序,当通知被触发时,当应用程序处于后台时,我会收到通知栏,当我点击该栏时,它会导航到通知集的表格视图中。 当我从后台退出应用程序时,我收到通知,但是当点击栏时应用程序正在崩溃,因为它没有获得tableview的索引路径。

我在didFinishLaunchingWithOptions中调用此方法,并在AppDelegate.so中调用didReceiveLocalNotification,当应用程序在后台时通过单击通知栏应用程序导航到适当的tableview。

2 个答案:

答案 0 :(得分:0)

UILocalNotification有一个 userInfo 字典。在那里,您可以为您的案例indexPath

存储该通知的一些相关信息
  NSDictionary *userInfo = [NSDictionary dictionaryWithObjectsAndKeys:selectedSymptomIndex,@"selectedSymptomIndex",keyIndexNumber,@"keyIndexNumber", nil];
localNotification.userInfo = userInfo;  

在接收通知时(在didReceiveLocalNotification中),您可以检索像notification.userInfo这样的userInfo字典。从那里你将得到selectedSymptomIndex和keyIndexNumber 现在您可以构造indexPath

NSIndexPath *selectedSymptIP = [NSIndexPath indexPathForRow:selectedSymptomIndex inSection:keyIndexNumber]; 

答案 1 :(得分:0)

请打印 userinfo 并查看其中的内容。它将是一本字典,可能会遗漏某些内容或包含任何零值。