删除UI导航/标签栏和视图之间的细线?

时间:2014-12-03 00:26:37

标签: ios objective-c uinavigationbar uitabbar

在我的ios应用程序中,我的NavBar和/或TabBar与我的基础视图之间总是有一条细黑线。我试图通过调整条的厚度来解决这个问题。边界为零或设置条的颜色'与酒吧的颜色接壤。这些都没有帮助。

例如,我可以像这样调整UITabBar和UINavigationBar边框的粗细:

[nav1.navigationBar.layer setBorderWidth:5.0];
[navJudge.navigationBar.layer setBorderWidth:5.0];
[nav.tabBar.layer setBorderWidth:5.0];

另一方面,将宽度设置为0不会删除将我的NavBar和TabBar与视图分开的细黑线。

由于将厚度设置为零并不起作用,我尝试更改边框颜色:

[nav1.navigationBar.layer setBorderColor: [UIColor colorWithRed:0.216 green:0.263 blue:0.306 alpha:1].CGColor];
[navJudge.navigationBar.layer setBorderColor: [UIColor colorWithRed:0.216 green:0.263 blue:0.306 alpha:1].CGColor];
[nav.tabBar.layer setBorderColor:[UIColor colorWithRed:0.216 green:0.263 blue:0.306 alpha:1].CGColor];

这一般也有效,但是当我将它设置为我的视图的共享背景颜色加上我的NavBar和TabBar背景颜色(它们都是相同的)时,条形图和条形图之间仍然有一条细黑线。视图。

此外,UIApplication窗口背景颜色已设置为与UIView,TabBar和NavBar相同的颜色。还有一条黑线。我该如何解决这个问题?

提前感谢您的评论和答案。

2 个答案:

答案 0 :(得分:1)

这可能有用。

- (void)viewDidLoad
{
self.tabBar.layer.masksToBounds=YES;
self.tabBar.layer.borderWidth = 0.0;
self.tabBar.layer.borderColor = [UIColor colorWithRed:0.52 green:0.09 blue:0.07 alpha:0].CGColor;
self.tabBar.layer.shadowColor =[UIColor colorWithRed:0.52 green:0.09 blue:0.07 alpha:0].CGColor;
self.tabBar.backgroundColor = [UIColor whiteColor];
}

与NavigationBar相同。

答案 1 :(得分:0)

如果我理解正确,您需要执行以下操作:

[UINavigationBar appearance].shadowImage = [[UIImage alloc] init];

这将删除整个应用程序中的标准阴影(您在任何导航栏下方看到一条细线)。

相关问题