What is the default height of UITableViewCell?

前端 未结 8 1419
猫巷女王i
猫巷女王i 2020-12-12 12:21

I thought this information would have been easier to find :-)

What is the default height of a UITableViewCell? It looks like 44 pixels, but I\'d prefer to be sure.

相关标签:
8条回答
  • 2020-12-12 12:28

    "When style = UITableViewStyleGrouped, the default height of the top & bottom cells is actually 45.0f (not 44.0f). And, if the grouped table is only one row the cell height will be 46.0f." It's wrong!! 44.0f in fact! I just test it!

    0 讨论(0)
  • 2020-12-12 12:32

    If you want to calculate this on the fly, just allocate a dummy table cell and read off its height

    UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
    int height = cell.frame.size.height ;
    

    This way you defend against changes in future versions of iOS, although I suppose that is unlikely.

    0 讨论(0)
  • 2020-12-12 12:34

    When style = UITableViewStyleGrouped, the default height of the top & bottom cells is actually 45.0f (not 44.0f). And, if the grouped table is only one row the cell height will be 46.0f.

    0 讨论(0)
  • 2020-12-12 12:36

    It's 44 pixels. Definitely. I'll never forget that number.

    44px is also the default height for UIToolbar and UINavigationBar. (Both switch to 32px when autorotated to landscape orientation.)

    0 讨论(0)
  • 2020-12-12 12:36

    That sounds about right. But to be sure you could load up Interface builder, put in a UITableViewCell into the project then check the size properties in the Inspector window. I do not have my MacBook with me right now so I cannot check. But if you don't get a better answer from someone, that is how you can check for yourself.

    0 讨论(0)
  • 2020-12-12 12:39

    If you want the default dimension on any device you can use: UITableViewAutomaticDimension

    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    
        return UITableViewAutomaticDimension;
    }
    

    Although 44 pixels is currently the default this is a useful method if your app relies on having the default value set.

    0 讨论(0)
提交回复
热议问题