![](/img/trans.png)
[英]Converting objective-c method to swift [updateSearchResultsForSearchController]
[英]Issue in declaring an objective-C method in Swift
我正在嘗試將FCOfflineQueue(一種用於在脫機時對網絡請求進行排隊的持久框架)與以Swift編寫的iOS應用一起使用。 我應該對FCOfflineQueue
類進行子類化,並在我的子類中重寫以下方法-
- (BOOL)executeOperation:(int64_t)opcode userInfo:(NSDictionary *)userInfo;
在我自己從FCOfflineQueue
子類化的隊列中,很難在Swift中進行聲明。 我正在做以下事情-
override func executeOperation(opcode: Int64, userInfo: NSDictionary) -> Bool
它說-此方法不會覆蓋其超類中的任何方法。
如果相反,我將執行以下操作-
@objc override func executeOperation(opcode: Int64, userInfo: NSDictionary) -> Bool
它說-具有選擇器'executeOperation:userInfo:'的重寫方法具有不兼容的類型'(Int64,NSDictionary)-> Bool'
我以為int64_t
相當於Swift中的Int64
。 與轉換有關嗎?
任何幫助表示贊賞。
嘗試像這樣覆蓋:
override func executeOperation(opcode: Int64, userInfo: [NSObject : AnyObject]!) -> Bool {
return false
}
當您將具有參數化類型的NSDictionary對象橋接到Swift字典時,所得字典的類型為[ObjectType]。 如果NSDictionary對象未指定參數化類型,則將其橋接到[NSObject:AnyObject]類型的Swift字典中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.