【问题标题】:How do you vertically center a table view that has a variable number of rows?如何垂直居中具有可变行数的表格视图?
【发布时间】:2012-07-05 12:12:08
【问题描述】:

我有一个行数可变的 UITableView,而不是静态高度。

如何在 UIView 中垂直居中这个可变高度的表格视图?

【问题讨论】:

  • 你的问题是什么......你能说得更具体一点吗?
  • 您可以通过为您的表格视图指定正确的框架来做到这一点。根据您的要求,这是最大的问题。

标签: iphone ios uitableview


【解决方案1】:

在表格视图单元格中垂直居中文本的一种廉价且简单的方法是 你可以继承 NSTextFieldCell,并为每个表列设置它 使用子类单元格。在子类中,截取矩形 它在其中绘制单元格内容是一件简单的事情:覆盖 drawInteriorWithFrame 方法,对框架进行一些调整, 然后调用 super 方法。

- (void)drawInteriorWithFrame:(NSRect)cellFrame
                        inView:(NSView *)controlView {
    // Adjust the cell frame rect so it appears vertically centered.
    NSSize contentSize = [self cellSize];
    cellFrame.origin.y += (cellFrame.size.height - contentSize.height)
/ 2.0f;
    cellFrame.size.height = contentSize.height;
    // Do whatever it is it does...
    [super drawInteriorWithFrame:cellFrame inView:controlView];
}

【讨论】:

  • 哦,等等,您想将表格视图本身居中。如果是这样那我就不知道了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-03
  • 2012-03-12
  • 2014-06-28
  • 1970-01-01
  • 2017-12-13
相关资源
最近更新 更多