你好 StackOverFlowers 同胞!通常使用这个宏伟的网站,我可以自己解决大多数 iOS 问题,但我不得不在这里认输,希望你能提供帮助。
我的应用程序使用 Storyboards 并从表格视图开始。点击单元格会转到关于该单元格的详细信息页面。
我已经实现了从 URL 启动应用程序所需的代码,并且还编写了代码以将 URL 字符串分开以获得我想要在应用程序启动后使用的某些值。然后将这些值与指示“应用程序由 URL 启动”的标志一起写入用户默认值。在我的 AppDelegate 我有这个方法:
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
NSLog(@"Launched with URL: %@", url.absoluteString);
DFSCustomURL *passedUrl = [[DFSCustomURL alloc]init];
[passedUrl saveUrlSchemeToFile:url];
passedUrl=nil;
NSLog(@"Updating URL");
[UserDefaults setURLLaunch];
return YES;
}
在我的表格视图控制器中刷新表格的方法中,我有以下代码:
if(userDefaultValues.urlLaunch)
{
[UserDefaults disableURLLaunch];
//Get a CustomURL object for the kpiIndex value.
[self performSegueWithIdentifier:@"ViewKPIDetail" sender:[self.kpiArray objectAtIndex:0]];
}
问题是,当从 URL 启动时,App Delegate 中的代码直到调用表刷新方法后才会触发。这意味着“url 启动”的标志直到表重新加载后才设置,并且直到我再次刷新表后才发生 segue。
有任何想法吗?