2016-10-04 2 views
0

私は、タブバーを含むプロジェクトに取り組んでいます。タブバーには、leaveとOdという2つの項目があります。どちらも通常のViewControllerクラスです。彼らはそれの中にテーブルビューを持っています(私はテーブルビューコントローラを意味しません)。テーブルビューの項目をクリックすると、popUpviewControllerという名前のビューコントロールスウィフトファイルを持つポップアップ画面が表示されます。これは、テーブルビューで選択された項目の詳細を表示します。問題は私がpopUpdialogを却下したときです。私はいつも選択されたtabBar項目をデフォルトのものとして取得します。私が何をしたかタブバーが表示されているときにどのタブー項目を表示するかをプログラムで設定することはできますか?

enter image description here

私は、タブバーコントローラにストーリーボードイドを与え、その棄却したときに、このように、ポップアップメニューからそれを呼びました。

let viewController:UIViewController = UIStoryboard(name:self.whichSB!, bundle: nil).instantiateViewControllerWithIdentifier("AuthoriseTabBar?") as UIViewController 
        self.tabBarController?.selectedIndex=2 /* DOESN'T WORK OBVIOUSLY*/ 
        self.presentViewController(viewController, animated: false, completion: nil) 

**タブバーコントローラは、(これは、タブバーに示されて、デフォルトの項目として動作します)it.Iと関連するすべてのクラスがITEM1ポップアップが却下されたときにアイテム1を表示したいと思い持っていません、アイテム2のpopUpが終了したときのアイテム2です。**

誰でも上記のことをすることができます。私はここで任意のナビゲーションコントローラを使用する必要はありませんtabbar.selectedindexタブバーを得るために必要ですか?

答えて

0

このように、ポップアップVCからタブバーにアクセスできます。表示されているように通常の却下行でこれを実行してください。

if let presentingVC = self.presentingViewController { 
     if let tabController = presentingVC.tabBarController { 
      tabController.selectedIndex = 0 // Whatever index you want to select. 
     } 
    } 
    self.dismiss(animated: true, completion: nil) 
関連する問題