[英]Swift: How to segue between view controllers and use navigation bar to go backwards within a child view controller (XLPagerTabStrip)
[英]Swift: How to segue back to first view controller after using child view controllers from the XLPagerTabStrip
我一直在使用XLPagerTabStrip在視圖控制器的頂部有效地創建一個標簽欄,其中顯示了多個子視圖控制器(來源: https : //github.com/xmartlabs/XLPagerTabStrip )
讓我們將這些子視圖控制器稱為A1,B1和C1。 子視圖控制器內是表視圖,該表視圖一旦點擊即可連接到新的視圖控制器(A2)。 我希望能夠從A2返回到顯示子視圖控制器的第一個視圖控制器。 我嘗試將導航欄添加到子視圖控制器,並使用navigationController?.popToRootViewControllerAnimated(true)
方法,但是當按下包含此代碼的按鈕時,什么也沒有發生。 我也嘗試將導航控制器嵌入到母視圖控制器中,但這也行不通(不確定這是否是因為子視圖控制器A1,B1和C1未連接到情節提要中的母視圖控制器)。
任何幫助將不勝感激。
好的,我認為您可以通過幾種方法解決此問題。 首先,答案取決於您所使用的segue類型。 如果您正在模態使用禮物,那么您只需輸入
self.dismissViewControllerAnimated(true, completion: completion)
否則,請參閱下面的內容以選擇回A1ViewController的方法。
第一種選擇:
您可以將Mother View Controller嵌入到UINavigationController中。 然后,Mother View Controller將成為UINavigationController的根視圖控制器,您將可以使用
navigationController?.popToRootViewControllerAnimated(true)
第二種選擇:
放松的賽格。 這些設置非常適合向后退,可以分3個步驟實施。
在要返回到的控制器中創建一個展開方法。 (在您的情況下,該方法將在控制器A1中)
@IBAction func unwindToA1ViewController(segue: UIStoryboardSegue)
請參閱下面的進一步說明和視覺效果! https://www.raywenderlich.com/113394/storyboards-tutorial-in-ios-9-part-2
希望這可以幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.