我有一个UITableView,行数可变,而不是静态高度。
如何在UIView中垂直居中这个可变高度表视图?
答案 0 :(得分:0)
在表格视图单元格中垂直居中文本的一种便宜且简单的方法是 你可以继承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];
}