ios – 当我应该使用导航控制器?

我不知道什么时候应该使用导航控制器,而不是用普通的View Controller使用segue?
如果使用segue,Modal和Push之间有什么区别?

可以给我一个例子吗?

十分感谢 !

简短的答案:使用带有“show”段的导航控制器仅用于实现DRILL DOWN行为.

例如,
    导航控制器→作者→图书→书

>对于“根”(作者)下方的每个级别,导航控制器将自动添加标题栏和后退按钮.所以在书上,后退按钮自动命名为“< Authors”.
>子视图控制器必须与SHOW segues连接 – 显示节点告诉导航控制器“这是父子关系”,并导致预期的从右到右的转换. (要跳过层次结构,例如书籍→登录,请改用模式段)
>根视图控制器有一个导航栏,您可以添加更多的条形按钮,但子视图控制器不会,因为它被自动添加.

FoodTracker示例

现在可以解释苹果Start Developing iOS Apps (Swift)中FoodTracker教程的奇怪的布局. **第二个嵌套导航控制器有什么用?这只是一个简单的膳食清单:点击一顿饭,在餐点详细信息中显示,或点击添加到餐具详细信息将添加膳食.

FoodTracker Storyboard

>第一个导航控制器使我的膳食成为下拉层次结构的根,从任何数量的视图“推”从那里(不需要进一步的导航控制器只是为了做到这一点).
>但是,膳食细节用于显示现有膳食并添加新餐.要添加新餐,需要取消和保存按钮.第二个导航控制器允许这些按钮被添加(见上面的第3点),通过使食物细节成为根.
>显示现有的膳食是一个推动,但添加一顿饭是一种模式的节奏(新餐不是向下钻取).这很重要:添加膳食不能只是推动的原因是自动返回按钮(“<我的膳食”)变得模糊:是保存还是取消?
因为“导航”和“推送”是非常一般的术语,并且因为获得免费的后退按钮是很好的,所以认为导航控制器是从任何地方到任何地方都是诱人的,但是行为仅仅是为了分级遍历.

(这是一个古老的问题,但我也对这个iOS n00b感到困惑,像OP这样还有问题.)

翻译自:https://stackoverflow.com/questions/14977164/when-i-should-use-navigation-controller

转载注明原文:ios – 当我应该使用导航控制器?