我在.XB中做了一个简单的表视图。我想扩展所有屏幕大小(如iphone 6、6plus和ipad)的表格视图单元格。目前,我已经对不同屏幕的不同高度进行了硬编码,如下所示:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath: (NSIndexPath *)indexPath{
CGFloat cellHeight = 0;
if (IS_IPHONE_6P) {
// iphone 6P
// cellHeight = 133;
cellHeight = 175;
}
else if (IS_IPHONE_6){
// on iphone 6
// cellHeight = 120;
cellHeight = 160;
}
else if (IS_IPHONE_5){
//On iphone 5
// cellHeight = 105;
cellHeight = 145;
}
else if (IS_IPHONE_4_OR_LESS){
// on iphone 4
// cellHeight = 50;
cellHeight = 130;
}
else {
//on ipad
// cellHeight = 200;
cellHeight = 280;
}
// cellHeight = cellHeight *2;
return cellHeight;
}
我有更好的办法吗?
最佳答案
一个可能的解决办法是得到屏幕的高度,然后乘以你的比率系数。
return CGRectGetHeight([UIScreen mainScreen].bounds) * ratio;