2013-04-18 39 views
-1

我有以下情况的数据源:蒙上了实现代码如下

分配给UIViewControllerMyViewController A级UIViewController

在我UIViewController我有一个UITableView。但是UITableViewdataSource不是MyViewController,而是另一个类MyTableViewHandler

我在MyViewController中为表视图(MyTableView)创建了一个插座,即我可以从该类访问表视图。

现在我想要获取MyViewController中的表视图的数据源,该数据源应该是MyTableViewHandler的对象。

我迄今为止尝试:

MyTableViewHandler *myTableViewHandler = MyTableView.dataSource; 

MyTableViewHandler *myTableViewHandler = (MyTableViewHandler *)MyTableView.dataSource; 

调试表明引用设置为nil0x00000000)。

我会感谢你的帮助,在此先感谢!

+0

你如何设置'MyTableView'的dataSource属性? – ganzogo

+0

首先,我向界面构建器添加了一个对象,并在该对象上设置了MyTableViewHandler类。其次,我只是使用界面生成器和选项单击TableView,并从我的TableView拖动到该对象的一行。 – Sirper

+0

为什么投票下来? – Sirper

回答

0

你不需要投。在加载视图之前,您可能试图访问MyTableView。您可以拨打[self view]加载视图,或将此代码放置在某个地方,如viewDidLoad

+0

其实我想这在'viewDidLoad'方法已经:(除了不投我从编译器为dataSource'的'的返回类型的警告'ID ' – Sirper

0

您需要先创建MyTableViewHandler类的一个实例(下面的代码将是MyViewController - viewDidLoad中会是一个不错的地方)。

MyTableViewHandler * myTableViewHandler = [[MyTableViewHandler的alloc] INIT]; myTableView.datasource = myTableViewHandler;