ios - 消除 UINavigationBar 和 UIVisualEffectView 之间独特的模糊边缘

标签 ios swift ios9 uinavigationbar uivisualeffectview

目前,我的 View 层次结构由一个 UIViewController(不是 UITableViewController)、一个嵌套在 View Controller 中的 UITableView 和一个位于 UITableView 前面的 UIVisualEffectView(设置为 Extra Light)组成,与 UINavigationBar 的底部对齐。我要达到的效果有点类似于App Store的segmented view。

但是,我注意到在导航栏和 UIVisualEffectView 之间的边界处出现了一个奇怪的模糊边缘,这使得 View 看起来不一致,如下图(红色圆圈突出显示):

enter image description here

最理想的情况是,我希望 UIVisualEffectView 与 UINavigationBar 的模糊效果完美融合。

谢谢。

最佳答案

尝试使用 UIToolBar 而不是 UIVisualEffectView 作为段的背景。导航栏具有半透明背景而不是模糊效果。 UIToolBar 具有与导航栏相同的半透明背景,因此它在边缘看起来是无缝的。

关于ios - 消除 UINavigationBar 和 UIVisualEffectView 之间独特的模糊边缘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38257979/

相关文章:

ios - UISplitViewController 在 iOS 9 中是否存在保留周期错误?

ios - 使用UI自动化处理通知(仪器)

ios - Xamarin iOS : A EXC_CRASH, 无法理解日志的内容

ios - 如何检测用户是否在我的应用程序中为本地通知设置了横幅样式警报或 'normal' 样式警报?

swift - 如何使用鼠标在另一个 IB 自定义 View 中进入/退出来控制一个 IB 自定义 View

ios - iOS 8 中的旧金山字体

ios - 在调用 resignFirstResponder 之前,UITextField 不会自动调整宽度以适应内容?

ios - 在 TextView 内容中显示特殊字符 ("@")

ios - UILabel 图层背景色部分填充意外

ios - 通过单击推送通知打开应用程序时调用哪个方法