首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自定义NSTableCellView

自定义NSTableCellView
EN

Stack Overflow用户
提问于 2014-03-16 16:06:45
回答 1查看 1.1K关注 0票数 0

我想用海关NSTableCellView制作一个NSTableCellView,下面是我迄今为止所做的工作:

附件代表:

代码语言:javascript
复制
#import <Cocoa/Cocoa.h>
#import "TheView.h"

@interface AppDelegate : NSObject <NSApplicationDelegate, NSTableViewDataSource, NSTableViewDelegate>

@property (weak) IBOutlet NSTableView *tableView;
@property (copy) NSMutableArray *tableContent;
@property (assign) IBOutlet NSWindow *window;

-(IBAction)addRow:(id)sender;

@end

附件代表:

代码语言:javascript
复制
#import "AppDelegate.h"

@implementation AppDelegate
@synthesize tableContent;

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    tableContent = [[NSMutableArray alloc]init];
}

-(id)init{
    self = [super init];

    if (self) {
        tableContent = [[NSMutableArray alloc]init];
    }
    return self;
}

-(NSInteger)numberOfRowsInTableView:(NSTableView *)tableView {
    NSLog(@"%@",tableContent); //Here tableContent is empty
    return [tableContent count];
}

- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
    NSView *result = [tableView makeViewWithIdentifier:tableColumn.identifier owner:self];
    TheView *view = [tableContent objectAtIndex:row];
    result = view;
    return result;
}

-(IBAction)addRow:(id)sender {
    TheView *view = [[TheView alloc]init];
    [tableContent addObject:view];
    NSLog(@"%@",tableContent); //Here tableContent result with the correct number of objects
    [_tableView reloadData];
}

但当我试图添加一个对象时,什么都不会发生.TheView是NSTableCellView的一个子类,它绘制了一个简单的rect。当然,我添加了NSTableViewDataSource和NSTableViewDelegate。

更新2在深入研究我的代码之后,我发现在numberOfRowsInTableView中,tableContent导致了空的,或者与我用.

EN

回答 1

Stack Overflow用户

发布于 2014-03-16 18:08:43

您创建的视图似乎没有大小。您可以尝试替换视图初始化,使用initWithFrame而不是init

代码语言:javascript
复制
[[TheView alloc]initWithFrame:CGRectMake(0, 0, 100, 20)];

此外,您还可以尝试在viewForTableColumn方法上设置名声。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22439253

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档