MonoTouch:UITableView出口变量为null

时间:2010-08-30 23:17:40

标签: uitableview xamarin.ios

我正在浏览McClure等人使用MonoTouch进行的Wrox'Professional iPhone Programming“的”导航表“部分,介绍了为iOS设置分层UI的基础知识,并遇到了以下问题。

我创建了一个新的“带控制器的iPhone视图”文件(名为ParametersViewController),从中删除了UIView,添加了UITableView,为其创建了一个出口({{ 1}})并根据教程将“文件所有者”视图插座连接到tableView

在此视图的父视图的UITableView方法中,我实例化我的RowSelected,调用默认构造函数,我想在其中设置表视图的数据源:

ParametersViewController

this.tableView.Source = new DataSource(this, new [] {"one", "two", "three"}); 是一个继承自DataSource

的嵌套类

所有编译并运行正常,直到执行该行。事实证明UITableViewSource为空,因此我得到this.tableView

NullReferenceException是表的出口。怎么会是null?我不能在构造函数中设置表源吗?如果没有,我该怎么办?

2 个答案:

答案 0 :(得分:3)

解决方法是

  • 不要创建名为tableView的插座
  • 使视图成为UITableViewController的子类,而不是UIViewController
  • 请参阅我的UITableViewController的base.TableView属性,而不是我创建的无意义的插座

答案 1 :(得分:0)

我不是100%清楚你在做什么,但可能需要在UIViewController的ViewDidLoad方法中访问你的UITableView。此时,您的NIB视图应该被实例化。

如果这不是问题,如果您可以提供更多代码以便我们可以确切地看到正在发生的事情,那么它可能会有所帮助。我认为缺乏回应可能是因为人们不确定他们是否完全了解问题的性质。