私は使用していますIBM Watson APIs - Alchemy Data news目的関数Cの値を返すswift関数の使い方は?
問題は、私は迅速な目的のCブリッジを使用していますが、その間に値を返す関数がついています。どのように私は目的のCコードでその値を使用するのですか?
は、ここに私の迅速なクラス
私は表示するalchemyDataNews.getNewsプリント値を持つようにしたい@objc class alchemyNews : NSObject {
func getNewsList() -> NewsResponse {
let apiKey = "api-key"
let alchemyDataNews = AlchemyDataNews(apiKey: apiKey)
let start = "now-1d" // yesterday
let end = "now" // today
let query = [
"q.enriched.url.title": "O[IBM^Apple]",
"return": "enriched.url.title,enriched.url.entities.entity.text,enriched.url.entities.entity.type"
]
let failure = { (error: NSError) in print(error) }
alchemyDataNews.getNews(start, end: end, query: query, failure: failure) { news in
print(news)
}
let response : NewsResponse = alchemyDataNews.getNews(start, end: end) { news in
return news
}
return response
}
}
です。だから私はObjective Cクラスでこのようにこの関数を呼び出しています。
@property (strong, nonatomic) AlchemyDataNews *getnews;
-(void)loadNews
{
self.getnews = [[AlchemyDataNews alloc]init];
[self.getnews getNewsList];
}
しかし今何をすればよいですか?これは関数を呼び出すだけで、応答を与えないので、配列に入れてtableviewに表示することができます。
私はあなたのSwiftの実装について最も確信しています...同期的な方法でデータを使用したいと思われます。これは非同期のワークフローで収集します。だから私は_return_値の代わりに_completion closure_を使うために元の関数を完全に書き直す必要があると思います。 – holex