我想使用NSTableView向用户显示磁盘列表,我认为显示它们的方式与普通的NSTableView有所不同。这是一个图像示例:
我喜欢的功能是:
我特别不愿意做第三个,因为我认为它将包含我自己的细胞亚类并自己绘制文本和图像,我有否线索如何做:(
其他的我认为一旦有人指出我正确的方向,他们就不会那么困难了......
PS:图像来自首选项中的Xcode 4.
答案 0 :(得分:0)
您可以使用NSCollectionView,并设计一个可用于行的自定义NSView,但有关使用XCode 4的一些注意事项,请参阅this question and answers。
答案 1 :(得分:0)
好的!我发现所有这三件事都可以做到:
现在第三个我做的事情与我说的想法有点不同:
`
@interface ACTCenteredTextFieldCell : NSTextFieldCell
{
}
@end
@implementation ACTCenteredTextFieldCell
- (NSRect)titleRectForBounds: (NSRect)theRect {
NSRect titleFrame = [super titleRectForBounds: theRect];
NSSize titleSize = [[self attributedStringValue] size];
titleFrame.origin.y = theRect.origin.y + (theRect.size.height - titleSize.height) / 2.0;
return titleFrame;
}
- (void)drawInteriorWithFrame: (NSRect)cellFrame inView: (NSView*)controlView {
NSRect titleRect = [self titleRectForBounds: cellFrame];
[[self attributedStringValue] drawInRect: titleRect];
}
@end
有!到目前为止对我来说工作得很好!