2011-07-25 93 views
1

我有4種不同的視圖(a,b,c,d)。用戶可以從:導航控制器彈出視圖中的具體流程

a->b, 
b->c ,b->d 
c->b ,b->d 
d-> c, d->b 

加載新視圖我使用navitaion控制器推送視圖。 我的問題是什麼,以使其始終像這樣的工作來處理後退按鈕的最佳解決方案:

d->c 
c->b 
b->a 

不顧一切先視圖控制器的推動。

在換句話說用戶進行轉換的順序如下: (ie.a-> B-> C-> B-> C-> D-> C),但是當他按下後退按鈕我要他看到屏幕B,以前沒有推D. D.

我知道如何以醜陋的方式解決它,但我期望更優雅的東西。

回答

1

的UINavigationController支持彈出回通過popToViewController特定視圖控制器:動畫方法...

入時視圖控制器,直到指定的視圖控制器是在導航堆棧的頂部。

  • (NSArray的*)popToViewController:(UIViewController的*)的viewController動畫:(BOOL)動畫

Official Apple Docs

但我會建議重新考慮你的導航層次結構。 Apple人機界面指南建議遵循結構化和一致的導航方案。控制器之間的跳轉可能會讓用戶感到困惑。

相關問題