如何做横向UITableview分页?

时间:2011-12-02 17:07:16

标签: uitableview scroll paging uipagecontrol

我想在每个页面上显示该表格。该表将具有相同的结构,但每页上的数据不同。我希望UIPageControl可视化当前页面。怎么做? 使用UITableviewController我将能够更新表中的数据。 UITableview具有参数:paging enable。

1 个答案:

答案 0 :(得分:1)

我会在cellForRow中检查uipagecontrol的值...返回给定页面的单元格。 uipageControl在事件UIControlEventValueChanged上有一个回调,然后你应该重新加载表视图。

- (void) callback:(id) sender {
    [mytableview reloadData];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    if (pgcontrol.currentpage == 1) {
        ...
    } else if (pgcontrol.currentpage == 2) {
        ....
    }
    ....
}

然后你需要小心地将uipagecontrol放在uitbaleview的顶部,根据经验,最好的是有一个包含uitableview和uipagecontrol或其他控件的bacground uiview,这样两者都不会重叠,在这种情况下你会结束使用uiviewcontroller而不是uitableviewcontroller。一般来说,我发现uitableviewcontroller只对简单的简单视图有用,只有一个tableview而且没有细化。

希望这有帮助。

编辑:把它们放在一起你就会遵循这些方针: 1)从文件模板库创建一个uiviewcontroller子类 2)在xib上添加页面控件作为控制器视图的子视图,与添加uitbaleview相同 3)您需要出口到这两个控件,您需要将控制器定义为数据源和表的委托 4)你需要一个IBAction来链接到pagecontrol上更改的事件值,这就是我的名字回调:(id)发送者在我的初始答案中+它是IBAction如果你用IB做的话 5)其余的回到最初的答案,pgcontrol是uipagecontrol的出口