2016-02-04 56 views
0

我正在使用Swift處理iOS項目。我有一個嵌入在UINavigationController中的ViewController。我的應用與plist中的PDF文件關聯。用戶可以在項目中打開通過電子郵件發送給他們的PDF。我知道這再與交易:使用Swift2從AppDelegate重新打開iOS應用程序到指定的導航控制器

func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool { 

    if url != "" { 

     // Load from Mail App 

     incomingFileTransfer = url 

     incomingStatus = "Incoming" 

     /*let rootViewController = self.window!.rootViewController 
     let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
     let setViewController = mainStoryboard.instantiateViewControllerWithIdentifier("MainMenu") as! MainMenuViewController 
     rootViewController?.navigationController?.popToViewController(setViewController, animated: false)*/ 

    } else { 

     // Regular Load 

     print("App Delegate: No incoming file") 

     incomingFileTransfer = nil 

    } 

    return true 
} 

如果用戶在應用的其他區域,他們再次從PDF打開應用程序,該應用程序打開回到他們在那裏的區域。我希望它總是打開第一個加載的ViewController。我看了here,並試圖在我上面的章節AppDelegate中實現這一點,但沒有運氣。有人可以請特別在Swift中幫忙嗎?將Objective-C轉換爲Swift並不是很棒。

ViewControllerTitle設定爲MainMenu

enter image description here

ViewControllerUINavigationController設定爲Initial ViewMain名稱:

enter image description here

Storyboard有的內UINavigationControllerIdentity Inspector

enter image description here

更新

對不起。 url被分配給全球Variable,然後被加載到的另一個ViewController

+0

*試圖實現這個沒有運氣*系統給了你一個URL,你沒有做任何事情,或從導航控制器堆棧中刪除任何推送的視圖控制器。你在哪裏打開了URL,或讓你的導航控制器的初始視圖控制器顯示PDF? –

+0

對不起。請參閱更新。 – ChallengerGuy

+1

http://stackoverflow.com/questions/8329999/restart-iphone-application-from-the-very-beginning這篇文章應該做你想找的。 – NSGangster

回答

0

尋找here爲@NSGangster建議,我走進我的plist並添加以下內容:

enter image description here

現在我的應用程序重新打開,就好像它是第一次。

相關問題