导航视图控制器的基本概念
导航视图控制器(UINavigationController)是用于构建分层应用程序的主要工具,管理着多个内容视图的换入(压入)和换出(弹出)。
自身提供了视图切换的动画效果。
它的父类是UIViewController,是所有视图控制器的基类。
导航控制器是以栈的形式来实现。
栈的概念与性质
栈的基本概念和性质
栈是一种数据结构,采用一种先进后出(后进先出)的原则。如,我们把衣服一件一件放到箱子中,就可以看成是一个对象入栈的过程。当需要拿到最底层的衣
服,需要把盖在上层的衣服一层一层拿掉,即后进先出的原则。同理,导航控制器也是以栈的形式来管理视图控制器,任何视图控制器都可以放入栈中。
向栈中添加一个对象的操作称为入栈(push),即把对象推入到了栈里。
我们把第一个入栈的对象,叫做基栈。
我们把第最后一个入栈的对象,叫做栈顶。
我们在栈中删除一个对象的操作叫做出栈(pop)。
当前显示的视图控制器,即为栈顶。选择“返回”时,这个视图控制器就出栈了。
导航控制器的基本样式
基本样式
蓝色部分为:导航控制器的导航栏(NavigationBar);
橙色部分为:控制器包含的内容视图(用户感兴趣的区域);
绿色部分为:导航控制器的工具栏(UIToolBar),默认是隐藏的;这些视图共同构成了导航控制器。
导航视图控制器(UINavigationController)是用于构建分层应用程序的主要工具,管理着多个内容视图的换入(压入)和换出(弹出)。
自身提供了视图切换的动画效果。
它的父类是UIViewController,是所有视图控制器的基类。
导航控制器是以栈的形式来实现。
栈的概念与性质
栈的基本概念和性质
栈是一种数据结构,采用一种先进后出(后进先出)的原则。如,我们把衣服一件一件放到箱子中,就可以看成是一个对象入栈的过程。当需要拿到最底层的衣
服,需要把盖在上层的衣服一层一层拿掉,即后进先出的原则。同理,导航控制器也是以栈的形式来管理视图控制器,任何视图控制器都可以放入栈中。
向栈中添加一个对象的操作称为入栈(push),即把对象推入到了栈里。
我们把第一个入栈的对象,叫做基栈。
我们把第最后一个入栈的对象,叫做栈顶。
我们在栈中删除一个对象的操作叫做出栈(pop)。
当前显示的视图控制器,即为栈顶。选择“返回”时,这个视图控制器就出栈了。
导航控制器的基本样式
基本样式
蓝色部分为:导航控制器的导航栏(NavigationBar);
橙色部分为:控制器包含的内容视图(用户感兴趣的区域);
绿色部分为:导航控制器的工具栏(UIToolBar),默认是隐藏的;这些视图共同构成了导航控制器。