2016-05-17 3 views
0

クロージャ付きスウィフトカスタムイニシャライザは、目的のCコードでは表示されません。閉鎖せずにinitが表示されているようクロージャ付きスウィフトinitはObjective Cでは表示されません

init(url:String,request:ABaseRequest, 
    type:AnyClass, success:(ABaseResponse)->Void, 
    failure:(ResponseCode,NSError)->Void) { 

    ...... 
    ...... 
} 

init(url:String,request:ABaseRequest,type:AnyClass) { 
    ...... 
    ...... 
} 

は、あなたたちは、この問題を解決する方法を知っていますか?

答えて

0

コード全体を検査した結果、私のコードで問題が見つかりました。私のクロージャー内で使用されるクラスには、@objcという注釈はありません! 。だから注意深い人、客観的なcにさらされる各クラスは@objcで注釈を付けるべきです。ありがとう。

0

これで、既に問題を解決している場合があります。私は似たようなものを自分で実行しました。

他に問題がなければ、プロジェクトのビルドを試みることで可視性の問題を解決できます。あなたのスウィフトコードに新しいものを導入した場合、Objective-Cコードではすぐには見えないかもしれませんが、プロジェクトをビルドすると修正されるはずです。

カスタムイニシャライザに関連する別の問題がある場合は、ビルド時にコンパイラから通知されます。そのような場合は、ここで問題を共有してください。

関連する問題