2016-06-16 10 views
0

私はLocationManagerクラスを使用していました。これはさまざまなタスクを実行し、後続のクロージャを使用します。私が手クラスをフレームワークに移動したときにスウィフトの後端閉鎖が停止しました

public func getAdresseForLocation(location: CLLocationCoordinate2D, addressType: LocationManagerAddressType, completion: (Address?) -> Void) 

しかし、今、次のように私は私のクラスやメソッドpublicを宣言しdonc、様々な理由から

func getAdresseForLocation(location: CLLocationCoordinate2D, addressType: LocationManagerAddressType, completion: (Address?) -> Void) 

、私はフレームワークの中にいくつかのファイルを移動することを決めた:ここ は、メソッドのシグネチャであります末尾の閉鎖からのコンパイルエラー:

Cannot convert value of type '(Address?) ->()' to expected argument type '(Address?) -> (Void)' 

は私が閉鎖からボイドまたは(ボイド)を返し、(ボイド)、()に戻り値の型を変更しようと、何も機能しません。 あなたは何が起こっているか考えていますか?

Thakns。

+0

'アドレスが' と宣言されていますか? – Dershowitz123

+0

これはpublicとして宣言された構造体で、フレームワーク内にもあります – Khal

答えて

0

試してみてください。

completion: ((Address)? -> Void)) 
+0

返されたアドレスは私の終了時に必須ではないので、同じものではありません。この例では、無しで補完を呼び出すことはできません。 – Khal

+0

編集した答えを確認してください。 – Dershowitz123

+0

'(Address?) - >()'の値を期待される引数型 '(Address)に変換できませんか? - >無効 ' – Khal

関連する問題