我有一个有原型单元格的桌面视图。如何使用特定标识符设置所有单元格的高度?例如,我有两个单元格;一个单元格的识别符为"cell10"
,另一个单元格的标识符为"cell50"
。如何设置它,以便所有带有标识符"cell10"
的单元格的高度为10,而具有标识符"cell50"
的所有单元格的高度为50?如有任何答案,我们将不胜感激。(顺便说一下,我用的是Swift 2。)
发布于 2016-06-07 17:22:28
在heightForRowAtIndexPath()中,可以调用cellForRowAtIndexPath()。一旦有了单元格,就可以调用reuseIdentifier来获取它的标识符。然后根据标识符返回10或50。
发布于 2016-06-07 17:25:00
我不知道如何迅速完成,但在目标C中,我会做以下几件事-
实现以下的tableview功能-
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
//your custom cell
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if(cell.reuseIdentifier isEqualToString:@"cell10"){
return 10;
}else{
return 50;
}
}
发布于 2016-06-10 12:44:04
heightForRowAtIndexPath先调用,然后cellForRowAtIndexPath被调用。因此,在heightForRowAtIndexPath方法中,我们可能没有得到单元格或一些不一致。
您必须有一些值或字段,可以根据这些值或字段指定或区分单元格标识符。您有可能包含该值的模型数组。因此,在heightForRowAtIndexPath()中,您可以使用objectAtIndex方法从数据源数组中获得该索引路径的模型,并检查它是哪种类型,并根据它返回的高度而定。
这对每一种情况都有帮助。对我来说很管用。
https://stackoverflow.com/questions/37685379
复制相似问题