2016-06-27 5 views
0

私の主なプログラムは私のカスタムフレームワークでメソッドを呼び出しているので、完了したらメインプログラムのメソッドを呼びたいと思っています。 Swiftでこれを行う最善の方法は何ですか?カスタムフレームワークの補完メソッド

私が電話している方法はサービスなので、すぐに戻ることは期待できません。

これは私のフレームワークである:

public func login(server: String, password: String, username: String, url: String, completion : (success: Bool, json: AnyObject?) -> Void) -> UserProfile { 

    completion(success: true, json: json) 

    return profile 
} 

は、これは私が私のメインプログラムから呼び出すCAM方法ですし、私はそれが間違って

services.login(hostToUse, password:self.passwordField.text!, username: self.emailField.text!, url: "http://\(hostToUse)/user/login", completion: testCompletion()) 
+1

コードを共有します。補完ハンドラを追加する必要があります。一度コードを貼り付ける方法を説明します。 – Dershowitz123

+0

これは私のカスタムフレームワークのメソッドです。それは私のメインプログラムで働いていましたが、複雑なものの上でそれを動かしましたpublic function login(server:String、password:String、username:String、url:String、completion:(成功:Bool、json:AnyObject?) - > Void) UserProfile – user1079052

+0

私は本当に正しいコードなしであなたを助けることができません。あなたの質問は、私が恐れている適切な詳細を与えないと下降を続けるでしょう。 – Dershowitz123

答えて

1

あなたは間違ってそれを呼び出しているやっていると思います。次のように呼び出します。

services.login(hostToUse, password:self.passwordField.text!, username: self.emailField.text!, url: "http://\(hostToUse)/user/login") {(success, jsonData) in 

    if success { 
     // Your success code here 
    } 
    else { 
     // Your failure code here 
    } 

} 
+0

それは私が必要なものです。あなたはいつでも – user1079052

+0

!ハッピーコーディング! :) – Dershowitz123