是否可以在不使用继承的情况下在viewDidAppear上调用某些代码

时间:2017-12-19 15:05:54

标签: ios uiviewcontroller

我的应用项目使用了一些第三方库,它暴露了一个视图控制器类(LibViewController)。该类定义为final public,因此我不能继承它。

出现此控制器时,我需要运行一些代码。通常,我会覆盖viewDidAppear,但正如我所说,我不能使用继承。

视图控制器出现时是否有任何通知方式?

2 个答案:

答案 0 :(得分:1)

如果您使用swift,请尝试

extension LibViewController {
    override public func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(true)
    }
}

这样你获得了超类的方法,如果在LibViewController类中使用了viewDidAppear,这将无法工作

答案 1 :(得分:0)

试试这个

  self.present(LibViewController(), animated: true) {

        // your code after LibViewController is shown

    }