【问题标题】:Is it possible to set a view over a modal view?是否可以在模态视图上设置视图?
【发布时间】:2018-03-20 08:35:24
【问题描述】:

在这个 ViewController 中,它会呈现一个模态视图。

模态视图呈现后,如何将以下视图设置在模态视图之上?

第一个视图是当前 ViewController 中的 UIImageView。

第二个视图是另一个模态视图,在本例中,modalViewController2 将显示在第一个视图下方。

class ViewController: UIViewController {

    @IBOutlet weak var img: UIImageView!

    override func viewDidAppear() {
        super.viewDidAppear()

        self.modalViewController = self.storyboard!.instantiateViewController(withIdentifier: "modal") as! ModalViewController
        self.modalViewController!.modalPresentationStyle = .overCurrentContext
        self.present(self.modalViewController!, animated: true, completion: nil)


        self.modalViewController2 = self.storyboard!.instantiateViewController(withIdentifier: "modal2") as! ModalViewController2
        self.modalViewController2!.modalPresentationStyle = .overCurrentContext
        self.present(self.modalViewController2!, animated: true, completion: nil)
    }
}

【问题讨论】:

    标签: ios swift modalviewcontroller presentmodalviewcontroller


    【解决方案1】:

    首先呈现一个视图控制器应该在viewDidAppear中,因为在viewDidLoad中视图的层次结构还没有完成,其次你不能同时呈现2个模态VC,更好的方法是只制作一个模态VC并构造它有 2 个视图,并根据您的需要管理每个视图的隐藏/显示

    【讨论】:

    • 修改问题为viewDidAppear,UIImageView怎么样?
    • 您可以将其添加为子 VC,而不是将 VC 添加为 modal ,并将 imageView 插入到该子视图的上方
    猜你喜欢
    • 2011-03-05
    • 1970-01-01
    • 1970-01-01
    • 2011-09-18
    • 2017-10-24
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多