Gui*_*rme 4 uinavigationbar uisearchbar ios7
我正在创建一个iOS 7应用程序,我希望在NavigationBar下面有一个SearchBar,我希望它们看起来像一个单件.因此,我需要使用相同的颜色(已经完成)对它们进行着色并删除NavigationBar底部和SearchBar顶部的发际线.我怎样才能做到这一点?
Leo*_*ica 13
正式来说,这只能通过将shadowImagenavigationBar设置为空图像来实现.但是,仔细看看文档,据说:
要显示自定义阴影图像,还必须使用setBackgroundImage:forBarMetrics:方法设置自定义背景图像.如果使用默认背景图像,则无论此属性的值如何,都将使用默认阴影图像.
通过使用自定义背景图像,您将失去模糊的背景半透明效果.
如果您喜欢冒险,"发际线"是UIImageView,它是导航栏的子视图.您可以找到它并将其设置为隐藏.例如,这就是Apple在其原生日历应用中所做的事情.记得在当前视图消失时显示它.
在AppDelegate中使用以下代码(didFinishLaunchingWithOptions)
斯威夫特:
UINavigationBar.appearance().setBackgroundImage(UIImage(), for: .any, barMetrics: .default)
UINavigationBar.appearance().shadowImage = UIImage()
Run Code Online (Sandbox Code Playgroud)
目标c:
[[UINavigationBar appearance] setBackgroundImage:[[UIImage alloc] init]
forBarPosition:UIBarPositionAny
barMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setShadowImage:[[UIImage alloc] init]];
Run Code Online (Sandbox Code Playgroud)
斯威夫特3:
self.navigationController?.navigationBar.setValue(true, forKey: "hidesShadow")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8589 次 |
| 最近记录: |