【发布时间】:2014-12-09 13:23:46
【问题描述】:
我正在尝试从 Objective-C 访问 Swift 类的 Double? 属性。
class BusinessDetailViewController: UIViewController {
var lat : Double?
var lon : Double?
// Other elements...
}
在另一个视图控制器中,我正在尝试访问lat,如下所示:
#import "i5km-Swift.h"
@interface ViewController ()
@property (strong, nonatomic) BusinessDetailViewController *businessDetailViewController;
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
self.businessDetailViewController = [[BusinessDetailViewController alloc] initWithNibName:@"BusinessDetailViewController" bundle:nil];
self.businessDetailViewController.lat = businessArray[1]; /* THIS GIVES ME AN ERROR */
}
我得到了
在“BusinessDetailViewController *”类型的对象上找不到属性“lat”
为什么我无法访问此属性?我错过了什么?
【问题讨论】:
-
我不知道,因为在businessDetailViewController中,我也有一个插座
@IBOutlet var mapView: MKMapView?,我可以从外部访问它,但它没有public -
我认为可选结构在 Objective-C 中是不可见的。将验证。
标签: objective-c swift types objective-c-swift-bridge