我有一个tableview,显示网上的一些价格。有时某些价格具有“noPrice”的价值。 如果我在cellForRowAtIndexPath中检测到该价格,则返回没有文本的单元格。这需要空间,因此桌子有价格,然后是一些空间,价格,空间等。
我必须在cellForRowAtIndexPath中返回什么才能显示没有价格的单元格,并且没有空格?
答案 0 :(得分:3)
我相信你应该在重新加载tableView数据之前“清理”数组。即:您从网络接收数据,从数组中删除所有“空”值,然后为tableView设置数组属性并调用reloadData。
答案 1 :(得分:0)
Wolfgang在我的脑海里有正确的答案 - 在之前你显示你的表可能是正确的想法。
但是,另一种方法可能是使用表格行动画来主动从表格中删除表格行所以,在知道价格之前你有“ - ”或其他一些填充文字 - 然后一旦你知道价格为“未知”,
// Assume you just found out that cell #2 is no good
NSArray *indexPaths = [NSArray arrayWithObject:[NSIndexPath indexPathForRow:2 inSection:0];
[tableView beginUpdates];
[tableView deleteRowsAtIndexPaths:indexPaths withRowAnimation:UITableViewRowAnimationFade];
[tableView endUpdates];