頁面的跳轉技巧-setViewControllers

Crazy巴旦木發表於2018-08-08

例如 我們由A頁面跳轉到B頁面返回時要返回到之前沒有建立的C頁面。

1 如果先popB 然後再pushC 但是會閃一下

2 a 的viewControllers,如果給這個viewControllers 取出來新增上新的C,但是B依舊存在,可能傳輸資料會有影響。

3.現在就用到了我要說的setViewControllers方法,它可以將NavigationController 的跳轉路徑(堆疊)完全替換。

有兩種情況的例子:

1 B頁面返回時要返回到之前沒有建立的C頁面

1.獲取到viewControllers

2.移除所有路徑 removeAll()

3.新增新的路徑 append(C)

  1. 將新路徑通過setViewControllers方法加到self.navigationController裡面

2 A跳轉B時,新增新中間頁面C

1.獲取到viewControllers

2.移除所有路徑 removeAll()

3.新增新的路徑 append(C) append(B)

  1. 將新路徑通過setViewControllers方法加到self.navigationController裡面

然後B返回的時候就是C了

相關文章