【问题标题】:remove thin line between UI nav/tab bars and view? [duplicate]删除 UI 导航/标签栏和视图之间的细线? [复制]
【发布时间】:2015-01-31 09:59:09
【问题描述】:

在我的 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 相同的颜色。还是有黑线。我该如何解决这个问题?

提前感谢 cmets 和答案。

【问题讨论】:

  • 或许你可以上传你APP的照片
  • 你的问题的答案在于here...
  • @NewEngland 谢谢!你是对的。
  • 跟进:这里的大多数答案:stackoverflow.com/questions/27261557/… 无效。最简单的方法是设置 TabBar 和 NavigationBar 的 clipsToBounds 属性。我不知道为什么 shadowImage 技术对我不起作用。
  • 跟进:@NewEngland 推荐的帖子中唯一有效的方法是为 NavigationBar 和 TabBar 设置 clipsToBounds。我不知道为什么 shadowImage 方法不起作用。

标签: ios objective-c uinavigationbar uitabbar


【解决方案1】:

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

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

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

【讨论】:

  • 感谢您的建议。我试过这个,但外观没有改变。
【解决方案2】:

这可能有效。

- (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];
}

与导航栏相同。

【讨论】:

  • 这确实纠正了 1 像素线 但是 然后它给我留下了一个黑色矩形,其中通常显示状态栏。这特别难看,因为电池图标仍然存在。有什么建议可以解决这个问题吗?
  • @SunnysideProductions 我遇到了问题。修复。
  • @SunnysideProductions 添加self.view.backgroundColor = [UIColor whiteColor] 或替换您想要的颜色。
猜你喜欢
  • 1970-01-01
  • 2015-12-08
  • 2019-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多