UINavigationController 复习知识

一、 UINavigationController


1.用法

导航控制器是ios中常用的多视图控制器之一,它用来管理多个视图控制器。

导航控制器所控制的视图控制器都有一定的层级关系。


创建/ UINavigationController继承于UIViewController,以栈的方式管理所控制的视图控制器,至少要有一个被管理的视图控制器。

创建的时候需要用户提供一个视图控制器作为导航控制器的一个根视图控制器。


LeiMuViewController * lei = [[LeiMuViewController allocinit];

UINavigationController * nav = [[UINavigationController allocinitWithRootViewController:lei];

[_window setRootViewController:nav];

    

[nav release];

[lei release];


入栈和出栈

UINavigationController通过控制入栈和出栈来展示各个视图控制器。


视图控制器切换常用方法

pushViewController:animated //进入下一个视图控制器。

[self.navigationController pushViewController:forth animated:YES];


popViewControllerAnimated  //返回到上一个视图控制器

[self.navigationController popViewControllerAnimated:YES];


popToViewController:animated  //返回到指定的视图控制器

UIViewController * third = [self.navigationController.viewControllers objectAtIndex:2];

[self.navigationController popToViewController:third animated:YES];


popToRootViewControllerAnimated //返回到根视图控制器

[self.navigationController popToRootViewControllerAnimated:YES];




2.定制UINavigationBar


对于navigationBar,IOS默认的高度是64

如果将navigationBar的透明度关闭之后,navigationBar的高度将会变为44.

self.navigationController.navigationBar.translucentNO; //设置透明度开关


自定义navigationBar

修改UINavigationBar的背景图片

修改UINavigationBar的背景颜色

[nav.navigationBar setTintColor:[UIColor redColor]]; 字体颜色

[nav.navigationBar setBarTintColor:[UIColor grayColor]];  背景颜色


UINavigationItem的使用(控制bar的显示内容)




3.界面间的传值


第二个视图控制器如何获得第一个视图控制器的部分信息?


1.属性传值

2.单例传值 : 类只有一个实例,是一种常用的设计模式。ios中广泛使用。

3.代理传值(?)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值