我想使用分段控制来切换"两个"桌子,但我不知道什么是最好的方法。我应该真的创建2个表并在更改分段控制值时更改隐藏属性,还是应该更改数据源和全局属性,然后帮助我检测我想要显示哪些数据?
如果每个表都有相同的自定义单元格,那么我认为最好的方法就是使用一个表格。但我为每个表创建了2个自定义单元格(使用xib和自定义类,因为内容有点不同),所以我不确定。在cellForRowAtIndexPath:
中有类似的东西if(_firstContent)
CellIdentifier = @"trackIdentifier";
else
CellIdentifier = @"otherIdentifier";
UITableView *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (!cell)
{
if(_firstContent)
{
[tableView registerNib:[UINib nibWithNibName:@"PanelTrackCell" bundle:nil] forCellReuseIdentifier:CellIdentifier;
cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
}
else
{
[tableView registerNib:[UINib nibWithNibName:@"PanelOtherCell" bundle:nil] forCellReuseIdentifier:CellIdentifier];
cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
}
}
这是好事吗?
答案 0 :(得分:1)
最好的方法是使用一个表并更改此表中的数据。你的cellForRow方法是完全合法的,这种方法总是在数据在单元格内部完全不同时使用,但如果它是真实的,你应该使用自动布局并使用一个单元格。
使用两个表并不是一个好主意,因为那时你需要控制器的隐藏属性,并使用完全相同的cellForRow方法。所以是的,你的方法很好。