我有一个带有 Objective-C 和基于 Swift 的视图控制器的应用程序。我正在以编程方式从我的一个基于 Objective-C 的视图控制器之一打开一个基于 Swift 的视图控制器。我遇到的问题是我无法从 Objective-C 代码访问 Swift 变量。
我的斯威夫特代码:
@IBOutlet weak var profPicture: UIImageView!
@IBOutlet weak var profVerified: UIImageView!
@IBOutlet weak var profName: UILabel!
var passedUser:PFUser!
我的 Objective-C 代码:
MyProfileViewController *screen = [[MyProfileViewController alloc] initWithNibName:@"Main" bundle:nil];
self.dataPass = screen;
dataPass.profName.text = @"";
screen.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentViewController:screen animated:YES completion:nil];
我可以访问 IBOutlets 等 @ 属性,但无法访问和编辑 var 对象。
我这样做是因为当我呈现基于 Swift 的视图控制器时,我想将数据从基于 Objective-C 的视图控制器传递到基于 Swift 的视图控制器。
为什么我无法访问 var 对象?
这是我收到的错误:
错误如下:
在该类型的对象上找不到属性“passedUser”
'我的个人资料视图控制器*'
感谢您抽出时间,丹。
Swift 4:
Use @objc关键字来访问 swift 变量。
class Car: NSObject {
@objc let name: String
@objc let numberOfWheels: Int
let manufacturer: String
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)