2012-01-02 23 views
0

我个人偏好是将代码执行从接口对象中分离出来。例如,假设我有苏打课。苏打课具有诸如体重,身高和品牌名称等属性。分离Objective-C接口对象和执行

假设我还有另一个叫“Brain”的类。

我想大脑来填充NSTable与纯碱的对象,但我只希望我的AppDelegate类声明的接口的对象。


AppDelegate.h

@interface AppDelegate : NSObject <NSApplicationDelegate> 

@property (assign) IBOutlet NSTableView * sodaTable; 

@end 

Brain.m

@implementation Brain : NSObject 

- (void)aquireCaffine 
{ 
    /* Do stuff here that populates the sodaTable */ 
} 

任何形式分离就行。 我也意味着说我不希望appDelegate处理该呼叫。 这意味着,我宁愿不要做以下AppDelegate.h:

[self aquireCaffineUsingTable:sodaTable]; 

也许我做的事情非常不Objective-C的面向,但我有我的喜好我不?

回答

1

你可以让你的应用程序委托只声明接口对象。在某些时候,您需要将表的数据源设置为实现表数据源协议(NSTableViewDataSource)的对象。只要调用表的-reloadData方法,该对象就填充表。您可以在代码或Interface Builder中设置表格的数据源。有关更多信息,请参见the docs

+0

当然!谢谢! – evdude100 2012-01-02 03:20:39