swift - 将 uiview Controller 显示为弹出窗口

标签 swift popup

enter image description here我当前的 viewController 是黑色的(根据我的要求,这应该是黑色的)。我将另一个 View Controller 作为弹出窗口呈现。 该 Controller 有一个默认 View ,我将其设置为清晰的颜色,在默认 View 顶部采用另一个 View ,其背景颜色为黑色,并将其 alpha 设置为 .6,并在其顶部采用背景为白色的 tableview。我的问题是弹出窗口显示正确但是因为我的源 View Controller View 的颜色是黑色所以我的弹出窗口颜色也显示了这个效果

最佳答案

Add this code snippet from where you want to lunch popup.

    var helpView = UIStoryboard(name: "MainStoryboard", bundle: nil).instantiateViewController(withIdentifier: "ViewController") as? YourViewControllerClass

    let window = UIApplication.shared.keyWindow
    helpView.view.backgroundColor = UIColor.init(red: 0.0/255.0, green: 0.0/255.0, blue: 0.0/255.0, alpha: 0.6)
    helpView.view.frame = (window?.frame)!
    window?.addSubview(helpView.view)
    window?.rootViewController?.addChildViewController(helpView)

    helpView.didMove(toParentViewController: self)

Add this code snippet on the popup close button action.

    self.view.removeFromSuperview()
    self.removeFromParentViewController()

关于swift - 将 uiview Controller 显示为弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56865515/

相关文章:

jquery - 在 Chrome 扩展中使用 jQuery : load in background, 在弹出窗口中访问

javascript - 如何只显示一次点击弹窗

objective-c - 将 UnsafeMutablePointer 传递给函数时出错

swift - AlamoFire POST 可以工作,但返回 NSURLErrorDomain 错误

swift - 在 2 个页面之间传递状态 SwiftUI

javascript - 将窗口对象存储在本地存储中

PopupWindow 内的 Android 按钮

ios - 如何使用 Swift 在文本字段(从右到左)上输入货币格式?

swift - 将 subview Controller 放置在父 View 内部

JavaScript:检查窗口是否存在&&未最小化