0

我想自定义我的NSTableView. 我的总体要求是这样的:

  • 每行将有一个图像和一些文本;图片和文字可能不同。
  • 某些单元格可能没有图像。
  • 行高取决于一些外部因素。
  • 单元格不应该绘制背景,它应该显示NSTableView背景。

到目前为止,我能够用一些文本绘制透明单元格。我用谷歌搜索发现我需要自定义每个单元格。现在我有这个问题:我应该保持两列还是一列可以,左侧有一张图片,旁边有文字?

我也明白我需要重写两种方法:

- (void) drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView

所以对于每个单元格,我需要绘制/构建单元格——有人可以指导我吗?我是否朝着正确的方向前进?我可以通过上述方法实现具有动态高度的透明背景吗?

4

1 回答 1

1

每行将有一个图像和一些文本,

因此,有两列——一列带有图像单元格,另一列带有文本字段单元格。

图片和文字可能不同,

我应该希望如此。

某些单元格可能没有图像,

不是问题。

行高取决于一些外部因素,

成为表格视图的代表,它会询问您该行的高度应该是多少。

单元格不应该绘制背景,

除非您将其设置为这样做,否则它不会。

它应该总体上应该显示 NSTableView 背景,

无论如何,表格视图都会绘制自己的背景,您可以在 IB 的 Inspector 中进行设置。如果您希望表格视图不绘制背景,您可以将其背景颜色设置为透明颜色。

您不需要任何自定义单元格。

于 2011-01-20T15:09:47.980 回答