2016-07-26 9 views
0

SWRevealViewControllerをプロジェクトに正常に実装しました。サイドメニューは、異なるビューコントローラにナビゲートする異なるセルを持つUITableViewです。 'profile'セルをタップするとデフォルトでLoginViewControllerが表示され、そこにログインし、検証されるとProfileViewControllerに移動します。これは私の問題、私は、ナビゲーションバーのボタン(左側)が正しく動作しないProfileViewControllerに移動すると、リードします。同様に、ログアウトボタン(右のナビゲーションバーボタン)を押すと、LoginViewControllerに戻りますが、メニューボタンは機能しません。次のようにSwift - SWRevealViewControllerナビゲーション後に左のBarButtonItemが機能しない

マイナビ機能は次のように

func switchVC() { //Navigates to the profileViewController 
    let storyboard = UIStoryboard.init(name: "Login", bundle: nil) 
    let nav = storyboard.instantiateViewControllerWithIdentifier("Profile") 
    UIApplication.sharedApplication().keyWindow?.rootViewController = nav 
} 

func switchBack() { //Navigates back to the LoginViewController 
    let storyboard = UIStoryboard.init(name: "Login", bundle: nil) 
    let nav = storyboard.instantiateViewControllerWithIdentifier("Login") 
    UIApplication.sharedApplication().keyWindow?.rootViewController = nav 
} 

私の絵コンテは、次のとおりです。あなたが提供することができるかもしれStoryboard

任意の助けいただければ幸いです。みんなありがとう!

乾杯

答えて

2

あなたの質問は多少回答するのは難しいかもしれませんが、おそらくこれが役立ちます。 SWReveal View Controllerを機能させるには、メニューボタンを操作するために、常にSWRevealコントローラのメインシーンにルーティングする必要があります。 >ナビゲーションコントローラシーン - - 私の絵コンテが

SWRevealViewControllerシーンのように見えた場合たとえば、

メインビュー>と私はナビゲーションコントローラシーンに戻ってルーティングされ、ボタンは機能しません。あなたが到達しようとしているナビゲーション/他のシーンの前に来るSWRevealControllerシーンの最初のインスタンスに戻る必要があります。

あなたがその仕事をするためにSWRevealViewControllerシーンの別のインスタンスを追加する必要がある場合は、ちょうどあなたが動作するようにボタンを必要とするナビゲーションコントローラ/ビューコントローラにsw_front識別子を通じてセグエ、その後、バックにsw_rear識別子を通してそれをセグエメニューの同じ1つのインスタンス

申し訳ありませんこの回答が混乱している場合は、何かを明確にすることができるかどうかお知らせください。

+0

マイクさん、ありがとうございました!あなたの投稿は、私が必要なものを達成するのを助けるのに非常に役立っていました!あなたのソリューションでは、少しのコードと一緒に私が探していたものを達成することができました。ありがとうございました! –

+0

うれしい私は助けることができました。私は最近自分自身に同じ問題を抱えていた –

関連する問題