以下の私のコード、
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"Color Cell" forIndexPath:indexPath];
......
......
......
if (UIInterfaceOrientationIsLandscape([[UIDevice currentDevice] orientation])) {
cell.textLabel.font = [UIFont fontWithName:@"HelveticaNeue-Thin" size:14.0f];
} else {
cell.textLabel.font = [UIFont fontWithName:@"HelveticaNeue-Thin" size:24.0f];
}
return cell;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
CGFloat rowHeight;
if (UIInterfaceOrientationIsLandscape([[UIDevice currentDevice] orientation])) {
rowHeight = ([[UIScreen mainScreen] bounds].size.width - 52) / [colorArray count];
} else {
rowHeight = ([[UIScreen mainScreen] bounds].size.height - 64) / [colorArray count];
}
return rowHeight;
}
それを実行すると、テーブルビューはセルの高さだけでなく、正しく再配置される可能性があります。ただし、セルのテキスト サイズはそれに応じて変更されません。
なんで?修正方法は?
左が縦向き、右が横向き