iOS 導航欄返回到指定頁面的方法和理解


關於ios中 viewcontroller的跳轉問題,其中有一種方式是采用navigationController pushViewController 的方法,比如我從主頁面跳轉到了一級頁面,又從一級頁面跳轉到了二級頁面,然后從二級頁面跳轉到了三級頁面,依次類推。,如果一級一級的返回我知道是沒有問題的.

方法一:

你自己算 你是第幾級界面  然后pop回去就可以了

方法二:

 

​self.navigationController是當前的頁面;

MyNeedJumpVC 是我們需要跳轉的頁面;

 

UINavigationController導航控制器初始化 導航控制器棧的push和pop跳轉理解

(1)導航控制器初始化的時候一般都有一個根視圖控制器,導航控制器相當於一個棧,里面裝的是視圖控制器,最先進去的在最下面,最后進去的在最上面。在最上面的那個視圖控制器的視圖就是這個導航控制器對外展示的界面,也就是用戶看到的界面。

(2)我們需要把導航控制器加載到APP中,需要把這個導航控制器設置為window的根視圖控制器(都是控制器類,可以賦值),這樣就相當於加載到了window里。

(3)我們要在棧中新增或者刪除一個視圖控制器,就需要得到導航控制器,一般在棧中得所有視圖控制器都有一個self.navigationController,意思是我的導航控制器,也就是這個視圖控制器所在的導航控制器,這樣就拿到了導航控制器。

(4)棧中新增視圖控制器用pushViewController,其實就是push進去一個,這樣對於用戶而言就是打開一個新界面了。

(5)棧中刪除一個視圖控制器用popViewControllerAnimated,當然這個pop只能pop最上面的那個,對於用戶而言相當於從當前視圖回到上一級視圖。

(6)其實這個push和pop對於用戶而言都是打開和跳轉頁面的一個操作。而pop由更多地操作方法,如一下子pop掉只剩下一個根視圖控制器,那么就相當於從好幾層直接回到最原始的主頁面。也可以指定pop幾個,以跳轉到指定的頁面。

(7)最重要的應該就是這個push和pop方法,而pop有很多種,這個理解后就不難記憶。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM