iphone - 如何在一个部分中限制可见单元格的数量

时间:2013-04-28 12:34:42

标签: iphone uitableview

我有一个有两个部分的表,每个都有7个固定行,因为我使用的是故事板,我可以将我的表设置为静态表并静态填充。

问题是,它让我看起来很高,用户需要滚动整个视图,但我需要以每个部分只显示四行的方式更改它,如果用户想要滚动,则在表区域内滚动(不是整个观点)。

这是照片:

现在是:

enter image description here

但我希望如此:

enter image description here

当用户想要选择只在表格内滚动时, 谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

请勿使用您建议的双滚动视图。这令人困惑且难以使用。我强烈反对您建议的用户界面。

使表格视图动态化并使用datasource协议。

- (NSInteger)tableView:(UITableView *)tableView 
 numberOfRowsInSection:(NSInteger)section {
   // return the desired number of rows
}

如果有很多行,您可以将该部分作为默认值返回0行,并在用户点击节标题时动态插入行(为此使用自定义节标题)。

在任何情况下,静态表视图单元都不可行。

答案 1 :(得分:0)

在UITableViewController中实现这两个方法:

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
{
    if (section == tableView.numberOfSections - 1) {
        return [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, 1)];
    }
    return nil;
}


- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
{
    if (section == tableView.numberOfSections - 1) {
        return 1;
    }
    return 0;
}

事实上,这些代码告诉tableview您不再需要为我渲染分隔线,因此它看起来不会显示空单元格(实际上,也不能选择空单元格) )

或者您可以将单元格样式设为分组。