概述:iOS的最佳實踐 - 定製回動作,popToViewController:VS手動刪除從導航堆棧控制器
我已經3個控制器A,B & C和推視圖控制器所示在下面的圖片。
方案
我總是想視圖控制器彈到 'A' 不管是什麼。假設下面的流程。
NC > A > B > C
有兩種方法可以處理返回操作。
•popToViewController: -彈出到特定視圖控制器,在本例中爲'A'。
•從導航堆棧中移除視圖控制器'B'。以這種方式,視圖控制器'C'總是彈出來查看控制器'A'。
問:
由於iOS的後退按鈕(navigationBar.backButtonItem)沒有任何作用,除了流行音樂定製,我們要添加自定義左側欄按鈕,返回按鈕,並添加手動處理popViewController的按鈕動作。
在其他情況下,如果我們從導航堆棧中移除視圖控制器B並保留默認的導航欄後退按鈕。當點擊後退按鈕時,它會彈出來查看控制器'A'。
哪一個是最好的選擇,並簡單介紹爲什麼它更好?
注意
視圖控制器「A」不是根視圖控制器,而不是尋找代碼解決方案。
謝謝。
感謝您的回覆。我編輯了我的問題,'A'不是根視圖控制器。但問題是哪個更好的選項彈出特定的vc或從堆棧中刪除vc。另外我需要說明爲什麼這個選項比其他更好。 – Tesan3089
編輯我的答案,從導航層次結構中刪除viewcontroller是很少的開銷,因爲API是可用的,你可以使用它。 – suhit
同意,但我仍然在尋找解決viewcontroller是不好的做法的答案。 – Tesan3089