2016-09-19 2 views
0

私のアプリケーションをSwift 3に移行していますが、この問題が発生しました。時間と何のためにタイプはプロトコルに準拠していませんが、Swift 3に移行しました。

enter image description here

はここに私のコードの助けに思わ立ち往生されて、それは私がプロトコルに準拠していますことを目に見えるのです。

func loginButtonWillLogin(_ loginButton: FBSDKLoginButton!) -> Bool { 
    return true; 
} 

func loginButtonDidLogOut(_ loginButton: FBSDKLoginButton!) { 
} 

func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!) { 

    if (error != nil){ 

    } else if (result.isCancelled){ 

    } else { 
     navigationController?.pushViewController(ContainerScreen(), animated: false); 
    } 
} 

私は前進するために何かできますか?ありがとうございました。

+0

stdlibの 'Error'プロトコルと競合している' UIViewController'の拡張子に 'Error'というネストされた型を定義したようですね。本当ですか? – Hamish

+0

いいえ、私は私のプロジェクトにUIViewControllerの拡張機能がありません。 –

+2

ええ、奇妙です。あなたが 'loginButton'メソッドdeclerationで' Error'をCMD +クリックすると、Xcodeはどこに行きますか? – Hamish

答えて

1

あなたのdidCompleteWithメソッドにはいくつかの問題があります。完了には複数のパラメータがあるようです。しかし、あなたは2つしかありません。

func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith completion : (button : FBSDKLoginButton, result : FBSDKLoginManagerLoginResult, error : Error) ->() { 

} 

私はここに適切な構文はありませんが、私はあなたがコンセプトを持っていると思います。完了には3つのパラメータが必要です。FBSDKLoginButtonがありません。

+0

ありがとうあなたの答えはあなたです。私は適切な構文でドキュメントを見つけることができないようで、私はいくつかのココアポッドに問題があるので、現在プロジェクトをデバッグできませんが、私はあなたのソリューションを試すことができるとすぐにコメントします。 –

関連する問題