IOS 导航栏navigationController的一些设置

//导航栏标题颜色/大小

[self.navigationController.navigationBar setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:16],NSForegroundColorAttributeName:[UIColor whiteColor]}];

//如果想将状态栏变为白色,这样就行

self.navigationController.navigationBar.barStyle = UIStatusBarStyleLightContent;

//使父View的原点坐标包括导航栏的坐标(默认是导航栏下面为原点坐标的)

self.extendedLayoutIncludesOpaqueBars = YES;


- (void)viewWillAppear:(BOOL)animated{//每次出来这个页面时都会运行

self.navigationController.navigationBar.translucent = YES;

//设置导航栏背景图片为一个空的image,这样就透明了

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"空白"] forBarMetrics:UIBarMetricsDefault];

//去掉透明后导航栏下边的一条线

[self.navigationController.navigationBar setShadowImage:[[UIImage imageNamed:@"空白"] init]];

}

- (void)viewWillDisappear:(BOOL)animated{//每次离开这个页面时都会运行

self.navigationController.navigationBar.translucent = NO;//半透明

//    如果不想让其他页面的导航栏变为透明 需要重置

[self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];

[self.navigationController.navigationBar setShadowImage:nil];

}

//导航栏的返回按钮添加图片

self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"返回白色描边"] style:UIBarButtonItemStyleDone target:self action:@selector(beackAction)];//记得要添加方法才能执行返回

//导航栏的标题为图片

self.navigationItem.titleView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"logopng@2x"]];

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 最近项目中遇到了要自定义导航栏的需求,也不是那么复杂,但之前做这块的时候总是一直一知半解,以至于这次实现自定义导航...
    Damon22阅读 6,702评论 0 3
  • (http://upload-images.jianshu.io/upload_images/1197386-a0...
    光明程辉阅读 8,910评论 1 8
  • *7月8日上午 N:Block :跟一个函数块差不多,会对里面所有的内容的引用计数+1,想要解决就用__block...
    炙冰阅读 7,317评论 1 14
  • 附近的立交桥上快要通车了。远远看到还有几块隔音板没有装,本打算到桥上拍延迟摄影。偶然看到公交站前的两人依靠在栏杆上...
    信马归风阅读 1,761评论 3 1
  • 其实都这么多年了,我终于弄清楚了一件事情,不喜欢读书。 举个例子,10年,我在南国书香节上面淘了一本商务印书社的《...
    鸡蛋碎花阅读 1,449评论 0 0