从与核心数据链接的 NSTableView 中的选定行获取数据

Posted

技术标签:

【中文标题】从与核心数据链接的 NSTableView 中的选定行获取数据【英文标题】:Getting data from selected row in NSTableView linked with Core Data 【发布时间】:2010-10-25 20:49:25 【问题描述】:

嘿, 所以我正在开发一个核心数据应用程序,并且我有一个与核心数据链接的 NSTableView。该表有三列。姓名,职位,薪水。我还设置了双击操作。现在我需要的是,当我双击一行时,我会得到该行的三个值。 我可以做到以下几点:

NSArray* myArray = [arrayController selectedObjects];
NSLog(@"%@", [myArray objectAtIndex:0]);

但我得到的输出是:

(实体:员工;ID:0x617890;数据: 姓名=“乔”; 职位 = "经理"; 工资=“1”;

有没有办法把它们分开?

谢谢

【问题讨论】:

【参考方案1】:

我想通了。

NSArray* selectedObjects = [arrayController selectedObjects];
NSLog(@"%@", [selectedObjects objectAtIndex:0]);

NSEntityDescription *entity = [selectedObjects objectAtIndex:0];
NSLog(@"%@", [entity valueForKey:@"Name"]);

【讨论】:

或:NSArray *selectedObjects = [arrayController selectedObjects]; NSLog(@"%@", [[selectedObjects objectAtIndex:0] Name]);也就是说,如果您确定实体具有“名称”属性。

以上是关于从与核心数据链接的 NSTableView 中的选定行获取数据的主要内容,如果未能解决你的问题,请参考以下文章

使用核心数据存储对 NSTableView 的拖放支持

可可:核心数据 + NSTableView

遍历 NSTableview 或 NSArrayController 以获取数据

基于视图的 NSTableView 中的 NSPopupButton

Mac OSX 应用程序:与 NSArrayController NSTableView 核心数据添加记录相关的问题

Mac OSX应用程序:与NSArrayController相关的问题NSTableView核心数据添加记录