我在我的应用程序中使用了UITableView
。我有以下问题:
我需要知道用户何时选择了一行。从我收集的内容来看,我需要编写一个实现UITableViewDelegate
的类。然后我需要覆盖RowSelected
方法。无论如何在我的控制器中执行此操作(而不是创建另一个类)。这似乎有点矫枉过正。像myTableView.RowSelected += MyMethod()
这样的东西。我不确定为什么RowSelected
首先不是一个事件......
我想在左侧剪切UITableView
(标题中的文字)的标题(默认为右侧)。我知道您可以设置LineBreakMode
,但似乎我必须在GetViewForHeader
方法中执行此操作(在标题中创建我自己的UIView
)。有更简单的方法吗?
答案 0 :(得分:2)
MonoTouch提供(接近)iOS SDK的完整绑定 - 即.NET基类库中已经存在一些东西并且没有重复(但是如果你需要它们我们会添加它们,只需填写一个{{3在这种情况下报告)。
通常,这些绑定非常接近原始API( C 或基于Objective-C),因为:
使用MonoTouch提供的 btouch 工具(可用于绑定您自己的ObjectiveC API),绑定过程基本上是自动化的;
它真的有助于移植存在的代码,查找代码示例和API文档(Apple开发人员网站,博客,问题在stackoverflow.com上...)
我不确定为什么RowSelected首先不是一个事件......
Objective-C中不存在.NET提供的事件。在很多(但不是全部)情况下,MonoTouch添加了.NET风格的事件,可以避免定义自己的xxxDelegates
类型。通常,事件名为On
+委托选择器的名称。
有更简单的方法吗?
如果UITableView
(ObjectiveC)API 恕我直言有点令人困惑 - 但还有另一种选择:bug。它使表格更多更容易,并且具有.NET友好的API。
P.S。请尝试每个条目仅询问一个问题,因为您无法将多个答案标记为已接受。它还可以帮助那些在网站上寻找类似问题/答案的人。