Ios 调用另一个类中的segue,该类使用swift调用UI

Ios 调用另一个类中的segue,该类使用swift调用UI,ios,swift,uiviewcontroller,segue,Ios,Swift,Uiviewcontroller,Segue,我正在用swift创建一个ios应用程序。我有一个UIViewController和一个从NSObject继承的“UserManager”类。基本上,当用户打开应用程序时,将执行UIViewController中的代码。UIViewController调用UserManager中的函数。当这个函数完成后,我希望执行一个segue(在我的代码中称为“connectSegue”的segue)。我是一个初学者 我所做的(但没有成功!): 这是我的ViewController: import UIKit

我正在用swift创建一个ios应用程序。我有一个UIViewController和一个从NSObject继承的“UserManager”类。基本上,当用户打开应用程序时,将执行UIViewController中的代码。UIViewController调用UserManager中的函数。当这个函数完成后,我希望执行一个segue(在我的代码中称为“connectSegue”的segue)。我是一个初学者

我所做的(但没有成功!):

这是我的ViewController:

import UIKit

var profileUser = UserManager()

class ViewController : UIViewController{

override func viewDidLoad() {login()}

func login()->Void {profileUser.createUser()}

func handleSegue()->Void {self.performSegueWithIdentifier("connectSegue",sender: self)}

}
这是我的UserManager类:

import Foundation

class UserManager: NSObject {

//Some properties

func createUser()->Void {

//Some code

var segueHandler = ViewController()
segueHandler.handleSegue()
}
}
我该怎么做?
谢谢

问题是您的UserManager正在创建ViewController的新实例,而不是调用UserManager的实例

更好的处理方法是在调用login之后,在ViewController中调用PerformsgueWithIdentifier


一般来说,最好不要将UI导航放在非UI类中。如果UserManager只执行用户功能,而不执行UI职责,那么它将更加有用。如果UserManager异步地执行它的工作,那么当工作完成时,您应该考虑使用通知来回传到VIEW控制器,这样它就可以执行SeGUE。这是我的第一次尝试,在login()之后调用performsguewithidentifier,但没有成功,因为login()没有时间完成他的部分工作。所以我想看看如何使用通知来管理它