【iOS】去掉Tabbar顶部线条

用系统tabbar的时候,如果整个tabbar是规则的长方形,不容易看出上部是有线条的,但不规则的话,会有一条黑色的线横亘在那里,非常影响界面美观,就像这样:

打开到工程里看,是这条线:

位于Tabbar,和按钮并列,是个imageview:

想要改变它,必须要知道具体是什么名字,跳转到库的tabbar文件去看,如下:

有三个内置的image:背景图片、选中时图片、阴影图片,

然后修改这三个image

[objc] view plain copy

  1. //去掉tabBar顶部线条
  2. CGRect rect = CGRectMake(0, 0, SCREENWIDTH, SCREENHEIGHT);
  3. UIGraphicsBeginImageContext(rect.size);
  4. CGContextRef context = UIGraphicsGetCurrentContext();
  5. CGContextSetFillColorWithColor(context, [[UIColor clearColor] CGColor]);
  6. CGContextFillRect(context, rect);
  7. UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
  8. UIGraphicsEndImageContext();
  9. [TBC.tabBar setBackgroundImage:img];
  10. [TBC.tabBar setShadowImage:img];

成功!结果如下:

原理:其实并没有删除横线(remove掉),只是把它变成透明的不影响操作和界面美观而已(视觉错)。

时间: 2024-12-29 11:11:21

【iOS】去掉Tabbar顶部线条的相关文章

IOS开发教程--如何去除tabbar顶部线条及设置背景图片

这个问题一直比较苦恼,网上很多方法实验下来都不是很好,今天终于解决了. 直接上代码: CGRect rect = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height); UIGraphicsBeginImageContext(rect.size); CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetFillColorWit

去掉tabbar顶部的阴影线

去掉阴影线的两种情况的tabbar: 1.背景全透明的tabbar 2.背景不是全透明(完全不透明,或有小部分透明)的tabbar 对于情况1,百度一下便有无数人告诉你: 1 //设置背景图片 2 _tabBarController.tabBar.backgroundImage = [UIImage imageNamed:@"tabbar_bg"]; 3 //消除阴影线(设置图片为空,线就没了) 4 _tabBarController.tabBar.shadowImage = [[UI

Android UI之自定义——类似iOS的Tabbar

Android UI之自定义--类似iOS的Tabbar Tabbar最早出现在iOS,iOS中的TabBarController实现了这个功能,开发起来相当简单.现在的APP,大多数都会使用Tabbar来作为应用的功能导航,界面简单清晰.那么Android常见的实现是通过RadioGroup来实现,今天将带来自定义实现,补充RadioGroup实现的不足. 先看看常见的软件中的使用: 这个是高铁管家APP,大家应该非常熟悉.这个APP的首页底部就是一个类似iOS的Tabbar.这里就不多举例子

ios去掉navigationController和tabBarController里的边框黑线

ios去掉navigationController和tabBarController里的边框黑线 by 伍雪颖 - (void)viewWillAppear:(BOOL)animated { [self.navigationController.navigationBar setBackgroundImage:[TDUtils createImageWithColor:[UIColor clearColor]] forBarMetrics:UIBarMetricsDefault]; [self.

iOS自定义tabbar后popToRootViewContriller和poptoviewcontroller时出现两个tabbar 的解决办法

iOS自定义tabbar后popToRootViewContriller和poptoviewcontroller时出现两个tabbar  的解决办法 问题:iOS自定义tabbar后popToRootViewContriller和poptoviewcontroller时出现两个tabbar 1.自定义代码: - (void)viewWillAppear:(BOOL)animated { [super  viewWillAppear:animated]; // 删除系统自动生成的UITabBarB

iOS 去掉导航栏的边界黑线&去掉搜索框的边界黑线和其中文本输入框的阴影 - 解决方案

去掉导航栏的边界黑线 in viewDidload: [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault]; self.navigationController.navigationBar.shadowImage = [[UIImage alloc] init]; 去掉搜索框的边界黑线 in viewDidload:

ios程序,顶部和底部产生空白——程序不能全屏运行

在开发过程中,遇到过这样的问题,整个程序不能以全屏状态运行,顶部和底部出现空白,如下图所示: 这样的原因是:设置的启动页不合适,设置大小合适的启动页就好了 ios程序,顶部和底部产生空白--程序不能全屏运行

IOS 去掉代码html中的标签元素,获得纯文本

content是根据网址获得的网页源码字符串    NSRegularExpression *regularExpretion=[NSRegularExpression regularExpressionWithPattern:@"<[^>]*>|\n"  options:0  error:nil]; //替换所有html和换行匹配元素为"-"        content=[regularExpretion stringByReplacingMa

iOS 去掉UITableView风格为group时候的最顶部的空白距离

CGRect frame=CGRectMake(0, 0, 0, CGFLOAT_MIN); self.tableView.tableHeaderView=[[UIView alloc]initWithFrame:frame];   CGFLOAT_MIN 这个宏表示 CGFloat 能代表的最接近 0 的浮点数,64 位下大概是 0.00(300左右个)0225 这个样子 这样写单纯的为了避免一个魔法数字,这里用 0.1 效果是一样的. 大家能够试一下.