同じプロジェクトで Swift と Objective-C を組み合わせています。次のようにSTTwitter cocoapod を使用しようとしています。
// objective-c
// STTwitter category method
//
- (void)getStatusesLookupTweetIDs:(NSArray *)tweetIDs
successBlock:(void (^)(NSArray *))successBlock
errorBlock:(void (^)(NSError *))errorBlock {
[self getStatusesLookupTweetIDs:tweetIDs
includeEntities:@(YES)
trimUser:@(YES)
map:@(YES)
successBlock:successBlock
errorBlock:errorBlock];
}
スウィフトコード
// swift
twitterApi.getStatusesLookupTweetIDs(ids, successBlock: { (tweets: [AnyObject]!) -> Void in
process(tweets)
finish()
}, errorBlock: { (err) -> Void in
error(err)
})
Obj-C ではすべて問題ないように見えます ( に渡された変数を調べようとはしませんでしたがsuccessBlock
、すべて有効な値を持っています)。しかし、Swift では、successBlock
実行されると、tweets
次のようになりました。
Printing description of tweets:
([AnyObject]!) tweets = 1 value {
[0] = <error: use of undeclared identifier 'cocoarr'
error: 1 errors parsing expression
>
}
NSArray
これを修正して Swiftに渡すにはどうすればよいですか? (コンパイルエラーなし)