В Swift UIViewController
, Мой код:Как использовать Swift замыкания в 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)'
Где ошибка ... (Извините, я забыл @ перед «Привет блоком» в файле OC. t - неосторожная ошибка. Теперь он работает нормально. Спасибо!)
Извините, что вы имеете в виду OC? –
Я забыл @ перед «Привет блок». Это неосторожная ошибка. Спасибо, что посмотрел на мой вопрос. – William