从自定义类Swift IOS打开视图

时间:2015-01-23 08:52:27

标签: ios swift uiviewcontroller storyboard

我有这个问题:

我有一个名为CoredataAction

的自定义类

在本课程中,我执行了所有CoreData操作,但它不是UIViewController

如何从我的CoreDataAction课程中打开视图?

我试过打开一个故事板,但确实没有用!它让我遇到了bad_access错误

1 个答案:

答案 0 :(得分:2)

一种解决方案是在CoredataAction类中添加一个包含初始ViewController的变量,只需确保在初始化CoredataAction类时设置该变量。

<强> CoredataAction

class CoredataAction {
    var parentViewController:UIViewController!

    func presentNewViewController() {
        let newViewController = parentViewController.storyboard?.instantiateViewControllerWithIdentifier("YOUR STORYBOARD ID") as UIViewController
        parentViewController.presentViewController(newViewController, animated: true, completion: nil)
    }
}

<强>的ViewController

func initCustomClass() {
    var coreData = CoredataAction()
    coreData.parentViewController = self
}

另一种选择是使用协议将视图演示文稿委托回ViewController类本身。它与上面的设置非常相似,只是意味着视图表示逻辑可以保留在CoredataAction customClass之外 - 如果你想要一个例子,请告诉我。