使用SWIFT封閉在斯威夫特UIViewController
,我的代碼:如何OC
import Foundation
import UIKit
typealias SayHello =()->String
@objc class SwiftViewController:UIViewController{
var sayHello:SayHello?
override func viewDidLoad() {
super.viewDidLoad()
if let helloClosure = sayHello{
helloClosure()
}
}}
在我OC UIViewController
,我的代碼:
swiftViewController.sayHello = ^(){
return "Hello block";
};
當Xcode
編譯OC文件,它顯示了一個錯誤:
Incompatible block pointer types assigning to 'NSString * _Nonnull(^_Nullable)(void)'from 'char *(^)(void)'
錯誤在哪裏...(對不起,我忘了@之前的「Hello block」在OC文件中。這是一個粗心的錯誤。現在它工作正常。謝謝!)
對不起,您可以通過OC是什麼意思? –
我在「Hello block」之前忘了@。這是一個粗心的錯誤。感謝您看我的問題。 – William