程序员

导航栏、Tabbar

2017-12-12  本文已影响0人  琉璃艺术

->写项目的时候设计总会觉得系统带的黑线都太难看了,要求程序上把这个去掉,本人每次都是要去找一下,然后有的可能还不好用,可能是我哪里用的不对吧,这里自己总结下,也希望可以帮到有同样需求的人哦~

Tabbar
 //隐藏系统Tabbar上面黑线
 CGRect rect = CGRectMake(0, 0, kScreen_Width, 0.5);
 UIGraphicsBeginImageContext(rect.size);
 CGContextRef context = UIGraphicsGetCurrentContext();
 CGContextSetFillColorWithColor(context, [[UIColor clearColor] CGColor]);
 CGContextFillRect(context, rect);
 UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
 UIGraphicsEndImageContext();
 
 UIImage *image = ImageNamed(@"tab_img_bg");
 [self.tabBar setBackgroundImage:img];
 [self.tabBar setShadowImage:image];

  注:这里的 “tab_img_bg” 是个人加了一个黑色投影的切图在tabar上
导航栏
  //隐藏系统导航栏下面的黑线
  [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
  [self.navigationController.navigationBar setShadowImage:[UIImage new]];

  //全局设置返回按钮
  UIImage *image = [UIImage imageNamed:@"nav_back"];
  image = [image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
  [UINavigationBar appearance].backIndicatorTransitionMaskImage = image;
  [UINavigationBar appearance].backIndicatorImage = image;
  self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"   " style:UIBarButtonItemStylePlain target:nil action:nil];

  //修改导航栏标题的同时不改变tabbar的标题
  self.navigationItem.title = "标题"

效果图


344843283D68BAB5E1AC33FD93374FB1.png
上一篇下一篇

猜你喜欢

热点阅读