ABUnknownPersonViewController

ABUnknownPersonViewController

相对而言,我是个初学者,所以这可能是一种完全常见的做法,或者是完全不可能的做法,但是我一直在想是否可以修改添加在故事板上的视图控制器,以便代替(或除此之外) to?)是UIViewConroller的实例,它也是(blahblah)ViewController的实例,例如ABUnknownPersonViewController

这样,而不是做这样的事情:

class ViewController : UIViewController {

    override func viewDidLoad() {
        let test = ABUnknownPersonViewController()
        ...
        self.presentViewController(test, animated: false, completion: nil)

    }

}

可以这样做:
class ViewController : ABUnknownPersonViewController {

    override func viewDidLoad() {

         //ViewController already is an ABUnknownPersonViewController, so you can treat it as one
         //example below (displayedPerson is a property of ABUnkownPersonViewControllers)
         self.displayedPerson...

    }

}

编辑: ABUnknownPersonViewController是Apple提供的类,它不是而不是支持子类(here)。如此说来,并且我显然希望尽可能简单的解决方案(避免使用协议或其他),我有什么选择?

我尝试class FourthViewController: UIViewController, ABUnknownPersonViewController, ABUnknownPersonViewController, ABUnknownPersonViewControllerDelegate只是为了获得有关多重继承的错误。

最佳答案

听起来您实际上想要做的是子类化UIViewController,然后在情节提要中将自定义类设置为子类。从情节提要中加载视图控制器时,它将是您的子类的实例。

因此,您的子类如下所示:

class ABUnknownPersonViewController : UIViewController {

    override func viewDidLoad() {
         self.displayedPerson...

    }

}

在情节提要中,突出显示要用于其自定义类的视图控制器,然后在“自定义类”字段中键入子类的名称。如果操作正确,它将自动为您完成。

ios - Swift:将View Controller的类型更改为UIViewController以外的其他类型-LMLPHP

关于ios - Swift:将View Controller的类型更改为UIViewController以外的其他类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31953424/

10-13 03:49