0
我使用Xcode將Swift 1.2代碼轉換爲Swift 2.0。 轉換後的類有這兩個屬性來定義:將現有的Swift 1.2代碼轉換爲2.0後,Xcode無法識別屬性
public var onSubmit: ((value: AnyObject...) -> Void)!
public var onCancel: (() -> Void)!
我使用這個類在Objective-C的對象。但是,我無法訪問onSubmit屬性。我得到一個錯誤
不能做到這一點 「物權 '的onsubmit' 上輸入 '* BMInputBox' 的對象未找到」:
anInputBox.onSubmit = ^(NSArray *values) {
NSLog(@"%@", values);
};
但是,奇怪的是我可以訪問onCancel
可以向該:
anInputBox.onCancel = nil;
任何想法,可以在這裏或如何解決這個問題?
我輸入了"MyProject-Swift.h"
標題。 標題沒有定義onSubmit屬性。轉換爲雨燕2.0
數組參數這個工作之前
的代碼工作正常:雖然它確實有一個onCancel。謝謝。你能否提供一個解釋。我是Swift新手。爲什麼這個工作之前,而不是現在? –
@Rage可能在1.2 swift variadic參數中被隱式轉換爲數組。實際上varariadic paramter函數在swift和objc之間是不可互換的 – dopcn