我想在整个屏幕(包括导航栏)上放置一个UIView.此视图将为黑色,不透明度为0.3.我想这样做,使屏幕内容变暗,并在上面推一个视图.我使用的代码是:
UIApplication.sharedApplication().keyWindow?.addSubview(darkView)
这会像预期的那样覆盖整个屏幕.然而,我现在想在这个黑暗的视图上放置另一个视图.有办法做到这一点吗?我try 的每一件事都只会导致视图处于黑暗视图之下.任何指点都将不胜感激!谢谢
我想在整个屏幕(包括导航栏)上放置一个UIView.此视图将为黑色,不透明度为0.3.我想这样做,使屏幕内容变暗,并在上面推一个视图.我使用的代码是:
UIApplication.sharedApplication().keyWindow?.addSubview(darkView)
这会像预期的那样覆盖整个屏幕.然而,我现在想在这个黑暗的视图上放置另一个视图.有办法做到这一点吗?我try 的每一件事都只会导致视图处于黑暗视图之下.任何指点都将不胜感激!谢谢
这很简单.
你只需将另一个视图添加到window
!它将在那里,在你添加的第一个视图的顶部.例如,此代码添加了一个黑色视图和一个白色视图:
let window = UIApplication.sharedApplication().keyWindow!
let v = UIView(frame: window.bounds)
window.addSubview(v)
v.backgroundColor = UIColor.blackColor()
let v2 = UIView(frame: CGRect(x: 50, y: 50, width: 100, height: 50))
v2.backgroundColor = UIColor.whiteColor()
window.addSubview(v2)
还可以将新视图添加为添加的第一个视图的子视图:
let window = UIApplication.sharedApplication().keyWindow!
let v = UIView(frame: window.bounds)
window.addSubview(v)
v.backgroundColor = UIColor.blackColor()
let v2 = UIView(frame: CGRect(x: 50, y: 50, width: 100, height: 50))
v2.backgroundColor = UIColor.whiteColor()
v.addSubview(v2)
Swift 4
let window = UIApplication.shared.keyWindow!
let v = UIView(frame: window.bounds)
window.addSubview(v)
v.backgroundColor = .black
let v2 = UIView(frame: CGRect(x: 50, y: 50, width: 100, height: 50))
v2.backgroundColor = UIColor.white
v.addSubview(v2)
易于理解的