1

我正在尝试为 OSX 调整以下iOS Coreplot 教程,但在找到一些等效功能时遇到了麻烦。为了创建散点图,本教程将创建一个派生自 UIViewController 的类,但由于我在 Mac 上,所以我的等效类是派生自 NSViewController。

-(void)viewDidAppear:(BOOL)animated 
{
    [super viewDidAppear:animated]; [1]
    [self initPlot];
}

在上面的函数中,类引用了一个[super viewDidAppear]. NSViewController 似乎没有这个功能,那么我应该使用什么功能呢?

self.hostView = [(CPTGraphHostingView *) [CPTGraphHostingView alloc]  
initWithFrame:self.view.bounds];
self.hostView.allowPinchScaling = YES;    
[self.view addSubview:self.hostView];

在上面的代码片段中,该类引用了一个self.view. NSViewController 没有这个功能,应该用什么等效的功能代替呢?

4

1 回答 1

1

没有直接等价于-viewDidAppear:。您可能必须NSView为视图控制器的根视图进行子类化,并覆盖-viewWillMoveToSuperview:-viewWillMoveToWindow:获得类似的行为。有关更多信息,请参阅NSView文档。

NSViewController有一个-view方法([self view]而不是self.view,但如果你真的想要的话,你可以使用后一种语法。)你指的是别的东西吗?

于 2012-08-19T03:21:04.397 回答