運行我已經安裝了我的應用程序自定義URL方案從故事板視圖,這是當應用程序沒有在後臺運行它是如何工作的:負載使用自定義URL方案,而應用程序在後臺
- 自定義網址鏈接到達的電子郵件,在點擊帶來了從故事板
- 登錄視圖一旦點擊登錄按鈕將取到您請求的選項卡控制器
到目前爲止好標籤。
這裏是我遇到的問題:
- 如果我自定義URL鏈接再從電子郵件單擊當應用程序已經加載一次,它在後臺運行,它不會把登錄視圖再
我的問題是我需要做什麼加載登錄視圖時,我再次點擊自定義url鏈接。
自定義網址方案第一次完美工作,但不是當應用程序已經運行時。我試圖調試此...當我點擊自定義url方案鏈接「handleOpenURL:(NSURL *)url」方法在我的AppDelegate.m文件中調用,那麼我需要做什麼來從故事板再次加載登錄屏幕,以及如何我是否檢查登錄屏幕是否已經加載到內存中...登錄屏幕是我在故事板中的開始視圖,下面是handleOpenUrl函數在我的應用程序委託中的樣子。
-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
if(!url){
return NO;
}
// check if email link was clicked
if ([[url scheme] isEqualToString:@"docova"]) {
NSString *urlString = [url absoluteString];
NSLog(@"URL Parameter string: %@", [url query]);
NSLog(@"incoming url => %@", urlString);
// NSArray *arrayQStrings=[self getDataOfQueryString:urlString];
NSDictionary *dict = [self parseQueryString:[url query]];
NSLog(@"query dict: %@", dict);
NSLog(@"query dict: %@", [dict valueForKey:@"action"]);
NSLog(@"query dict: %@", [dict valueForKey:@"docpath"]);
//[self.tabBarController setSelectedIndex:1]; // tab 3
//[self.parentViewController.tabBarController setSelectedIndex:1]; // tab 3
/* save user data ***/
NSUserDefaults *appPrefs = [NSUserDefaults standardUserDefaults];
[appPrefs setObject:[dict valueForKey:@"action"] forKey:@"action"]; // reset these after using it
[appPrefs setObject:[dict valueForKey:@"docpath"] forKey:@"docpath"]; // reset these after using it
// save data to application preference
[appPrefs synchronize];
return YES;
}
return NO;
}
有人可以建議如何在應用程序已經運行時從故事板預先獲取視圖。我知道有活動棧在Android中,有沒有類似的東西在IOS以及...
這幫我解決了我的問題。但是我有一個NavigationController作爲應用程序的第一響應者,並且爲了讓導航在我的第一個視圖中工作,我必須在Storyboard中的導航控制器上放置一個標識符,並加載_it_並將其設置爲rootViewController –