UINavigationController 导航控制器

今天讲了导航控制器UINavigationController

和标签栏视图控制器UITabBarController

 

先来说一说导航视图控制器  UINavigationController

 

导航控制器维护着一个视图控制器栈,任何类型的视图控制器都可以放入栈中

UINavigationController分为三部分

 

从图中可以看出分别为导航按钮,用户自定义内容和最下边的工具按钮。

其实只有中间的部分显示的就是这个导航视图控制器栈中的栈顶的视图

 

下面是我根据文档写的一些UINavigationController的一些东西


一、遵守的协议UINavigationControllerDelegate

@property(nonatomic,assign)id<UINavigationControllerDelegate>delegate

创建之后都有个委托对象,可以通过委托对象调用自己

 

二、实例方法

1、initWithNavigationBarClass:toolbarClass:

使用自定义的工具栏来创建并初始化一个导航控制器

2、-(id)initWithRootViewController:(UIViewController  *)rootViewController

  初始化导航视图控制器,并用rootViewController作为根视图控制器

 

3、- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated

   压栈,将一个视图控制器压入到栈顶

 

4、- (UIViewController*)popViewControllerAnimated:(BOOL)animated

从导航控制器栈中取出栈顶元素

 

5、- (NSArray*)popToViewController:(UIViewController*)viewControlleranimated:(BOOL)animated

  取出从栈顶视图控制器到特定视图控制器viewController 之间的元素

 

6、- (NSArray*)popToRootViewControllerAnimated:(BOOL)animated

取出除了根视图控制器之外的所有元素

 

7、-(void)setNavigationBarHidden:(BOOL)hidden animated:(BOOL)animated

 设置NavigationBar 按钮隐藏或显示

 

8、- (void)setToolbarHidden:(BOOL)hidden animated:

(BOOL)animated

与上一个相似,设置Toolbar隐藏或显示

 

9、- (void)setViewControllers:(NSArray*)viewControllersanimated:(BOOL)animated

用viewControllers取代当前被导航控制器控制的视图

 

以上就是UINavigationController的所有方法

 

三、所拥有的属性

  topViewController  property

  导航控制器栈的栈顶元素

 

visibleViewController  property

  与当前可见视图相关联的导航控制器栈中的视图控制器

 

viewControllers  property

当前导航控制器所控制的所有视图控制器,它是一个数组

 

navigationBar  property

导航控制器中的导航栏(只读)

 

navigationBarHidden  property

它是一个BOOL值,用来决定navigationBar是否隐藏

 

  delegate  property

  导航控制器的委托对象

 

toolbar  property

 与导航控制器相关联的用户自定义的工具栏

 

toolbarHidden  property

是一个标识,标识着工具栏是否处于隐藏状态

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值