我正在尝试将以下iOS Coreplot Tutorial修改为OSX,但是在查找一些等效功能时遇到了麻烦。为了创建散点图,本教程创建了一个从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没有此功能,应该使用什么等效功能代替? 最佳答案
没有直接等同于-viewDidAppear:
的内容。您可能必须为视图控制器的根视图子类NSView
,并重写-viewWillMoveToSuperview:
和-viewWillMoveToWindow:
以获得类似的行为。有关更多信息,请参见NSView
文档。NSViewController
有一个-view
方法([self view]
代替self.view
,但是如果您确实愿意,可以使用后一种语法。)您是否在指其他内容?
关于objective-c - NSViewController是否等效于以下UIViewController函数/变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12022539/