UIStatusBar 半透明样式
UIStatusBar Translucent Style
我提到了 Apple "Segue-Navigation" 范例中的一些新趋势。
在 Apple Music、Health 或 News 等应用中,所有主要 "start-point" 控制器都没有导航栏。相反 - 有一个大而大胆的美丽标题。
我想在我的应用程序中做同样的事情。
我用静态单元格创建了 UITableViewController。第一个包含控制器的标题。
但是当我向上滚动时,状态栏与这个单元格合并,所以我希望这个单元格像在 Apple 应用程序中一样位于状态栏的后面。
解决方案
let statusBarView = UIView(frame: CGRect(x:0, y:0, width:view.frame.size.width, height: UIApplication.shared.statusBarFrame.height))
let blurEffect = UIBlurEffect(style: .light)
let blurEffectView = UIVisualEffectView(effect: blurEffect)
blurEffectView.frame = statusBarView.bounds
blurEffectView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
statusBarView.addSubview(blurEffectView)
UIApplication.shared.windows.first?.addSubview(statusBarView)
我提到了 Apple "Segue-Navigation" 范例中的一些新趋势。 在 Apple Music、Health 或 News 等应用中,所有主要 "start-point" 控制器都没有导航栏。相反 - 有一个大而大胆的美丽标题。 我想在我的应用程序中做同样的事情。 我用静态单元格创建了 UITableViewController。第一个包含控制器的标题。
但是当我向上滚动时,状态栏与这个单元格合并,所以我希望这个单元格像在 Apple 应用程序中一样位于状态栏的后面。
解决方案
let statusBarView = UIView(frame: CGRect(x:0, y:0, width:view.frame.size.width, height: UIApplication.shared.statusBarFrame.height))
let blurEffect = UIBlurEffect(style: .light)
let blurEffectView = UIVisualEffectView(effect: blurEffect)
blurEffectView.frame = statusBarView.bounds
blurEffectView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
statusBarView.addSubview(blurEffectView)
UIApplication.shared.windows.first?.addSubview(statusBarView)