0

我想只为最上面的单元格设置部分标题(用于 UITableView),这是一种固定在顶部的表格标题,显示有关最上面的单元格的一些附加信息。

有可能吗?如果不是(我想因为我已经仔细阅读了所有文档)你知道如何复制这种行为吗?

4

3 回答 3

1

您需要创建自己的视图以用作标题。最简单的做法是让您的自定义标题视图成为表格视图的同级,并将其放置在屏幕上表格视图的上方。

由于UITableView是 的子类UIScrollView,因此您的表视图的委托也是滚动视图委托并接收UIScrollViewDelegate消息。你想实现这个方法:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView

每次您的委托收到该消息时,您希望它查看哪个表格视图行位于表格视图的顶部(使用[tableView indexPathForRowAtPoint:tableView.contentOffset])并相应地更新您的自定义标题视图的内容。

于 2012-08-25T17:15:30.317 回答
0

阅读有关 UITableView 的 Apple 文档。您要查找的属性是 tableHeaderView。

于 2012-08-25T09:41:09.743 回答
0

这很难(并非不可能),UITableViewController因为它强制 tableView 成为根视图。

如果您实现自己的控制器,请继承自UIViewController而不是UITableViewController.

您必须采用数据源和委托协议,并适当地实现这些方法,但随后您将拥有一个普通视图作为您的根视图。然后,您可以UITableView在任何您想要的位置和大小添加一个,周围有任何您想要的东西。

唯一真正的限制是您在 IB 中构建的静态表视图。但是,在这种情况下,您可以实现视图控制器包含,并将您的表视图控制器父级到另一个控制器,并给它一个特定的视图来接管。

第一个选项非常简单,但第二个是一种高级技术,您需要了解视图控制器包含才能正确操作。

于 2012-08-25T16:07:37.523 回答