UITableView以编程方式创建委托对象?

时间:2010-05-10 16:31:38

标签: iphone objective-c cocoa-touch

我有一个关于设置自定义委托类以与UITableView一起使用的问题。我所做的如下:

  • 设置一个新类(使用sperate * .h和* .m文件)
  • 符合<UITableViewDelegate, UITableViewDataSource>协议的新类
  • 添加了所需的方法。
  • 使用@property和IBOutlet创建指向新对象的指针。
  • 在InterfaceBuilder中创建并为我的新类分配了一个对象模板
  • 分配了dataSource并委托连接。

一切正常。我的问题是,如果我不想使用interfaceBuilder来设置和实例化我的新委托类,我该如何在Xcode中执行此操作呢?更具体地说,我将如何:

  • 实例化委托类,是否由控制器创建/拥有?
  • 设置dataSource和委托连接?
  • 这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:3)

在视图控制器中,创建委托类的新实例并将其分配给您的媒体资源,确保删除IBOutlet

MyDelegateClass * delegateClass = [[MyDelegateClass alloc] init];
[self setMyProperty:delegateClass];
[delegateClass release];

您可以通过执行以下操作来设置tableview的委托和数据源:

[myTableView setDelegate:self.myProperty];
[myTableView setDatasource:self.myProperty];

你应该把所有这些都放在viewDidLoad