为什么单击搜索栏时UISearchController上会出现白线?

时间:2018-01-04 05:59:06

标签: ios objective-c search navigationbar uisearchcontroller

enter image description here

enter image description here enter image description here

从图片中可以看出,点击搜索栏时会出现一条白线。我曾尝试将背景图像设置为UIImage并清除所有阴影图像,但当搜索栏单击并设置动画时,此白线仍会显示。

Pooja Gupta解决方案结果:

enter image description here

这是我用来自定义导航栏的代码

 [[UINavigationBar appearance] setBarTintColor:barColor];
[[UINavigationBar appearance] setTintColor:buttonColor];

3 个答案:

答案 0 :(得分:1)

您可以添加边框作为背景颜色

 UIColor bgColor = [UIColor blueColor]; // This is your background color.     
_searchBar.layer.borderWidth = 1.0;
_searchBar.layer.borderColor = bgColor.CGColor;

答案 1 :(得分:0)

尝试通过Storyboard而不是代码自定义颜色。你看到白色的行消失了(我不知道它是怎么做的)。

查看图片https://i.stack.imgur.com/lGlJu.png

答案 2 :(得分:0)

我有同样的问题。向下滚动scrollview时,导航栏和搜索栏之间有一条白线。通过检查UI层次结构,我发现它们之间存在差距。

间隙的颜色是其他视图的背景颜色,如tableview,collection或webview。在我的项目案例中有一个webview。所以我在webview的scrollview上添加了与导航栏的色彩相同的背景颜色。然后问题解决了!

enter image description here