2015-08-13 56 views
0

我已經使用Parse.com創建登錄/註冊流程(可以正常工作)。在我的主屏幕(用戶訪問登錄和註冊屏幕),我已經添加以下代碼自動登錄的用戶每次打開我的應用程序:使用viewDidAppear自動登錄不利用導航控制器

override func viewDidAppear(animated: Bool) { 

    if PFUser.currentUser() != nil { 

     self.performSegueWithIdentifier("test", sender: self) 

    } 

} 

「測試」是一個模式SEGUE從主屏幕創建到用於登錄或註冊後呈現給用戶的表視圖控制器。要明確的是,當主視圖控制器檢測到用戶已登錄時,它會通過登錄和註冊屏幕並直接進入表視圖控制器。

以下是我的故事板流量:

Storyboard Flow

1:主視圖控制器 - >導航控制器1 - >登錄 - 視圖 - 控制器 - >表視圖控制器1

2:主視圖控制器 - >導航控制器2 - >註冊視圖控制器 - >桌面視圖控制器1

問題是這樣的:

當用戶登錄或註冊(使用相應的屏幕)時,它將它們帶到桌面視圖控制器,屏幕頂部的導航欄(這正是我想要的)。但是,當登錄到應用程序並且用戶已經登錄時,當它自動將用戶帶到Table View Controller時,根本沒有標題。出於某種原因,它似乎忽略了它是導航控制器的一部分。

我希望上述內容很清楚,但是如果您需要澄清,請告訴我。我知道我的故事板設置有一些問題...任何幫助將不勝感激。

謝謝!

回答

0

個人而言,我不喜歡你的ViewCycle應該

  1. 導航控制器
  2. MainVC
  3. 登錄推從MainVC從MainVC
  4. TableList推
  5. 註冊推從登錄

這應該是您的代碼的理想解決方案。

然後這個代碼將工作就像一個魅力

override func viewDidAppear(animated: Bool) { 

    if PFUser.currentUser() != nil { 

     self.performSegueWithIdentifier("test", sender: self) 

    } 

} 
+0

這是非常有益的。謝謝! – SB2015

+0

@ SB2015快樂編碼歡呼隊友:) –