2016-09-19 4 views
-1

i Xcode8 bin mit und schnell 3. So voll umgesetzt ich mein Projekt auf die neueste Syntax und ich bekomme jetzt den Fehler:Facebook FBSDKLoginButtonDelegate loginButton Funktion Syntaxfehler

'Error' is ambiguous for type lookup in this context

in der Funktion:

func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!) { 
//do stuff 
} 

Die Funktion in FBSDK erklärt wie folgt:

- (void) loginButton:(FBSDKLoginButton *)loginButton 
didCompleteWithResult:(FBSDKLoginManagerLoginResult *)result 
      error:(NSError *)error; 

so habe ich versucht, zu ändern Fehlertyp zu NSError, aber ich erhalte den anderen Fehler:

'SignInViewController' does not conform to protocol 'FBSDKLoginButtonDelegate'

Ich weiß nicht, was zu tun ist. Jede Hilfe wird geschätzt!

Antwort

2

Ich habe festgestellt, dass ich RealmSwift importiert habe, die ihre eigene Error Struktur haben. Also die Lösung ist Swift.Error statt nur Error zu verwenden. Hoffe das hilft jedem.

1

Die Syntax in FBSDKLoginButtonDelegate Methode ist wie unten in Swift 3.

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


    } 

"didCompleteWithResult Ergebnis" auf "didCompleteWith Ergebnis" geändert wird, verändert.

+0

Danke für die Antwort, ich aktualisierte meinen Code mit Ihrer Empfehlung, aber der Fehler ist weiterhin –

+0

Bitte fügen Sie Ihre Sachen, die Sie in didCompleteWithResult Delegate-Methode haben. – Natarajan

+0

Der Fehler bleibt bestehen, auch wenn mein Code nur einen 'print (" swift3 ") hat –

Verwandte Themen