ios - 无法从 Objective-C View Controller 访问 Swift var - iOS

标签 ios objective-c swift properties var

我的应用程序同时包含基于 Objective-C 和 Swift 的 View Controller 。我正在从我的一个基于 Objective-C 的 View Controller 中以编程方式打开一个基于 Swift 的 View Controller 。我遇到的问题是我无法从我的 Objective-C 代码访问 Swift 变量。

我的 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 的 View Controller 时,我想将数据从基于 Objective-C 的 View Controller 传递到基于 Swift 的 View Controller 。

为什么我不能访问 var 对象?

这是我遇到的错误:

enter image description here

错误如下:

Property 'passedUser' not found on object of type 'MyProfileViewController *'

谢谢你抽出时间,丹。

最佳答案

swift 4:

使用@objc关键字访问swift变量。

class Car: NSObject {
    @objc let name: String
    @objc let numberOfWheels: Int
    let manufacturer: String
}

关于ios - 无法从 Objective-C View Controller 访问 Swift var - iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33479301/

相关文章:

ios - 在假期关闭期间发布应用程序

ios - 从视频ios创建缩略图?

ios - 为什么我的 NSManagedObject 子类方法没有被识别?

ios - UIPopover 上的 UITextField 不显示键盘

iOS:使用证书和签名验证文件 - 公钥错误,验证失败

ios - 如何使用 UICollectionViewController 设置具有多个部分的 1 标题

ios - 使用惰性变量时的编译错误

ios - 无法快速使用 CLGeoCoder 获取州和邮政编码?

ios - 在InApp购买中显示年度价格Swift iOS

ios - FontAwesomeKit - 'NSInvalidArgumentException' iOS 7.1.1