UITableView选择更改为Monotouch中的事件

问题描述

| 我创建了一个自定义的视图层次结构,该层次结构中的某个位置是一个UITableView,其出口名为“ 0”,因此我可以从后端代码访问它。 在该列表中的一个项目被选中时,我想创建一个新视图并将其推入根viewcontroller的视图堆栈,但是在UITableView上找不到任何相关事件。 所有控件都是使用.XIB文件中的“界面构建器”定义的 我看错地方了吗? 提前致谢。     

解决方法

是的,您在寻找错误的位置。要使用UITableView的\“ events \”,您必须实现ѭ1并将其分配给表视图。最常见的方法是在表格视图的控制器中作为嵌套类:
private class MyTableSource : UITableViewSource
{

    public override void RowSelected(UITableView tableView,NSIndexPath indexPath)
    {

        // Do something for the selected row

    }

    // Override both RowsInSection and GetCell methods!

}
然后,将MyTableSource类设置为表视图的Source属性:
myTableView.Source = new MyTableSource();
请注意,Objective-C中不存在UITableViewSource类。它只是一个MonoTouch类,同时包含UITableViewDataSource和UITableViewDelegate的方法,使事情变得简单得多。     ,RowSelected事件发生在UITableViewSource中。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...