0

以下の私のコード、

- (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;
}

それを実行すると、テーブルビューはセルの高さだけでなく、正しく再配置される可能性があります。ただし、セルのテキスト サイズはそれに応じて変更されません。

なんで?修正方法は?

左が縦向き、右が横向き

左が縦向き、右が横向き

4

1 に答える 1