我无法从Objective C中看到要设置的方法/变量,myVar
即使true
我已经添加了@objc
andpublic
修饰符并且方法签名Bool
中没有。setMyVarTrue()
Bool
这可能是由 Swift和 Objective C之间的差异造成的BOOL
。
其他类方法/变量是可见的,只是这个特定的不是。
如何Bool
从 Objective C 设置 Swift?
SWIFT代码:
public class MyViewController : UIViewController {
public var myVar:Bool = false
@objc public func setMyVarTrue() {
self.myVar = true
}
}
目标C代码:
MyViewController* myViewController = [MyViewController new];
myViewController.myVar = true // Variable not found
myViewController.setMyVarTrue() // Method not found
[self presentViewController:myViewController animated:NO completion:nil];