3つのグループでグループ化されたテーブルビューを作成しようとしていますが、各グループには異なる高さのセルがあります。ストーリーボードに適切な高さで3つのプロトタイプセルを設定し、各行に適切な高さを返すようにUITableViewControllerを設定しました。ただし、何らかの理由で、画面に表示されたときのセルの高さは1ピクセルしかありません。
コードをステップ実行すると、行ごとに正しい高さとセルが返されます。また、返される前に、各セルのフレームが正しいことを確認しました。ただし、呼び出すと、各行の高さが1ピクセルしかないrectForRowAtIndexPath
ことがわかります。rect
一定のセルの高さを使用すると、この問題は完全に解消されます。そのような状況では、セルは完全に表示されます。高さが可変である必要があるため、セルの一部は短すぎる/高すぎる場合があります。
ここで何が起こっているのかアイデアはありますか?を使用すると、各行のrectがどのように決定されるかを理解したいと思いheightForRowAtIndexPath
ます。
heightForRowAtIndexPathのコード:
- (NSInteger)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
switch (indexPath.section) {
case 0:
return 80.0;
break;
case 1:
return 260.0;
break;
case 2:
return 110.0;
break;
case 3:
return 114.0;
break;
default:
break;
}
return 0;
}