2014-11-24 1 views
1

내 코드에는 사용자가 로그인하거나 가입 할 수있는 작업 시트가 있습니다. 사용자가 이들 중 하나를 누르면 로그인/가입보기 컨트롤러에 연결될 처리기를 정의하려고합니다. 나는이 일에 매우 익숙해 져서 내가 뭘 잘못하고 있는지 잘 모르겠지만, 코드에서 변환 할 수 없다는 오류가 발생한다. 코드는 다음과 같습니다.Swift에서 경고 액션을 사용하여 다른보기 컨트롤러와 연결하려고 시도합니다.

let actionSheet = UIAlertController(title: "Do you have an account?", message: "Please Log-In or Sign-Up", preferredStyle: .ActionSheet) 
    if let presentationController = actionSheet.popoverPresentationController { 
     presentationController.sourceView = sender as UIView 
     presentationController.sourceRect = sender.bounds 
    } 

    let dismissHandler = { 
     (action: UIAlertAction!) in 
     self.dismissViewControllerAnimated(true, completion: nil) 
    } 
    let signupHandler = ({ 
     (ViewController: UIViewController!) in 
     let signupVC: nextViewController = segue.signupVC as nextViewController 
    }) 
    let loginHandler = ({ 
     (ViewController: UIViewController!) in 
     let loginVC: nextViewController = segue.loginVC as nextViewController 
    }) 
    actionSheet.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: dismissHandler)) 
    actionSheet.addAction(UIAlertAction(title: "Log-In", style: .Default, handler: dismissHandler)) 
    actionSheet.addAction(UIAlertAction(title: "Sign-Up", style: .Default, handler: signupHandler)) 
    presentViewController(actionSheet, animated: true, completion: nil) 

} 

어떤 도움을 주시면 감사하겠습니다! 미리 감사드립니다.

답변

2

나는 segues에 대해 잘 모릅니다하지만 일반적으로 그냥이처럼 그들을 소개 :

let loginVC = LoginViewController() 
self.presentViewController(loginVC, animated: true, completion: nil) 
+0

이 봐,이 일! 감사. 그러나, 새로운 ViewController를 제공 할 때, 화면은 단지 검은 색입니다 ... 어떤 생각입니까? LoginViewController 클래스에서 super.viewDidLoad()를 호출했습니다 ... – pbush25

+0

Identity Inspector에서 ViewController를 설정 했습니까? – AMAN77

+0

나는 그렇게 믿는다. SignupViewController (로그인보다는 오히려 등록 작업) 코드는 다음과 같습니다. 'let signupVC = SignupViewController() self.presentViewController (signupVC, animated : true, completion : nil)' – pbush25

관련 문제