Monotouch 中的 UITableView 选择更改事件

发布于 2024-11-01 03:59:14 字数 255 浏览 3 评论 0原文

我创建了一个自定义的视图层次结构,该层次结构中的某个位置是一个 UITableView,带有一个名为 TableView 的插座,因此我可以从后端代码访问它。

当选择该列表中的项目时,我想创建一个新视图并将其推送到根视图控制器的视图堆栈,但我在 UITableView 上找不到任何相关事件。

所有控件都是使用 .XIB 文件中的 Interface builder 定义的

我是否找错地方了?

提前致谢。

I created a custom hierarchy of views, somewhere in this hierarchy is a UITableView, with an outlet called TableView, so i can reach it from backend code.

I want to create and push a new view to the root viewcontroller's view stack when an item in that list is selected, but i can not find any relevant events on the UITableView.

All controls were defined using Interface builder in .XIB files

Am i looking in the wrong place?

thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

八巷 2024-11-08 03:59:14

是的,您找错地方了。要使用 UITableView 的“事件”,您必须实现 UITableViewSource 并将其分配给您的表视图。最常见的方法是在表视图的控制器中作为嵌套类:

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 类。它只是一个托管 UITableViewDataSource 和 UITableViewDelegate 方法的 MonoTouch 类,使事情变得简单得多。

Yes, you are looking in the wrong place. To use UITableView's "events", you have to implement a UITableViewSource and assign it to your table view. The most common way to do it is in the table view's controller as a nested class:

private class MyTableSource : UITableViewSource
{

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

        // Do something for the selected row

    }

    // Override both RowsInSection and GetCell methods!

}

You then set the MyTableSource class to the table view's Source property:

myTableView.Source = new MyTableSource();

Note that the UITableViewSource class does not exist in Objective-C. It is merely a MonoTouch class that hosts both UITableViewDataSource's and UITableViewDelegate's methods, making things a lot simpler.

怪我鬧 2024-11-08 03:59:14

RowSelected 事件发生在 UITableViewSource 中。

The RowSelected event happens in the UITableViewSource.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文