self.tabBar.layer.masksToBounds = YES;

这里白色带阴影背景是跟 UI 要的切图,其高度大于系统默认 Tabbar .
一,处理白色背景
很简单设置 tabbar 的背景图片即可,![IMG_3E633FF3D27C-
self.backgroundImage = [UIImage imageNamed:@"back_Tabbar"];

二,细线
在设置完之后在 tabbar 上放有一根细线,很丑.
试用方法一,(没有用)
[self.tabBar setShadowImage:[UIImage new]];
试用方法二,(没有用)
self.tabBarController.tabBar.subviews[0].subviews[1].hidden = YES;
打印出来发现shadowImage是 nil ,但是黑线一直存在,想到在某日历框架中使用".masksToBounds = YES;"解决了类似的细线问题,

细线消失但是tabbar的脑袋被切掉了 ,想来原来的脑袋也是个超出 tabbar 的脑袋 .所以我们调整 tabbar 的高度 即可完成.
解决
1.self.tabBar.layer.masksToBounds = YES;
2.调整 tabbar 高度
3.调整各个 subView位置
网友评论