重构应用程序代理

时间:2011-08-26 16:21:13

标签: xcode awakefromnib

我是Obj-C和Xcode 4的初学者,我目前正在浏览Mac Dev网站上的"Your First Mac Application"。我已经设法完成了主要部分,但我正在努力解决“重构应用程序代表”部分。

我创建了一个新类(用作控制器),添加了一个对象设置到这个新类,从类到滑块,静音按钮和文本字段的连接,我已经连接了新的类对象app委托接口文件。

不幸的是,永远不会创建track类的实例,因此程序不起作用,因为awakeFromNib函数永远不会被调用。我已经尝试将它放在app委托文件和新的控制器类中。

我哪里错了???

2 个答案:

答案 0 :(得分:0)

您必须在IB中创建新类的实例,或者需要在AppDelegate对象中以编程方式创建它(通常在init或awakeFromNib中)。您需要在AppDelegate中指向该对象。如果在IB中创建新对象,则将其连接到IB中的Track *指针。如果你在代码中执行它,它就像:

在.h文件中

TrackClass *track;
在.m文件中

track = [[Track alloc] init];
你做了什么?

答案 1 :(得分:0)

我在尝试教程时遇到了同样的问题,发现问题出在awakeFromNib

的实现上

错误的代码:

- (void)awakeFromNib:(NSNotification *)aNotification

正确的代码

- (void)awakeFromNib

应该有无参数传递awakeFromNib的实现。