我在网上找到了http://soulwithmobiletechnology.blogspot.it/2011/06/how-does-uitableviewcell-reorder.html,我认为它非常有用,的确将其实现到了我的应用程序中。现在,我将问您是否有人知道在加载视图时如何隐藏UITableCell。
如果使用此代码,则可以使用,但是在加载表视图时,它将显示所有展开的内容。加载视图时如何看到单元格缩小?

最佳答案

您的意思是折叠这些节,以便仅在使用者点击之前显示节标题吗?

如果未打开该节,则实现tableView:numberOfRowsInSection:返回0,如果打开则实际返回行数。

更新:我不得不先运行,然后才能仔细查看源代码并充实我的答案:

示例代码的MainController.m是实现该方法的位置(.xib将MainController设置为表视图的委托)。

如果要一次打开一个节,请在MainCotroller中有一个变量来存储打开的节。在tableView:numberOfRowsInSection中:执行以下操作:

if (section == [self openSection])
{
    return [[cellCount objectAtIndex:section] intValue];
}

return 0;

显然,用户点击时必须设置openSection。如果要多个打开的部分,而不是为当前打开的部分存储一个NSInteger,只需保留一个bool数组即可。

更新2

该示例实际上使用一个数组cellCount来保存每个节的单元格数。轻按该按钮时,cellCount在0和实际单元格数量之间切换。

最终效果是相同的(折叠部分的tableView:numberOfRowsInSection:返回0),但是没有理由将示例中的方法更改为我上面发布的方法,您要做的就是初始化cellCount数组以容纳所有0,然后进行其他操作将按预期工作。

因此,您要做的就是在viewDidLoad中查看MainController.m并更改行
[cellCount addObject:[NSNumber numberWithInt:[_cellArray count]]];

[cellCount addObject:[NSNumber numberWithInt:0]];

关于ios - 缩小UITableViewCell,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17189470/

10-10 21:11