如何从 NSPopupButton 下拉列表中获取 NSString 值?

How to get NSString value from NSPopupButton dropdown list?

从 sqlite 数据库获取用户名值。

-(NSArray*)getUname
{ 

NSArray *resul = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];
 NSArray *fetchedRecords = [resul valueForKey:@"uName"];
}

将此数组值插入 NSPopupButton

[_registeredUserPopupButton addItemsWithTitles:[self getUname]];

从 NSPopupButton 下拉列表中获取一个字符串值

NSString *usrNam = [NSString stringWithFormat:@"%@",[_registeredUserPopupButton selectedItem]];

从上面的代码 usrNam 值 returns 如下

"NSMenuItem: 0x6080000a9c00 mickel"

但我希望我的 nsstring 输出为 "mickel"

只需从菜单项中获取 title

NSString *usrNam = [[_registeredUserPopupButton selectedItem] title];

或用圆点表示法

NSString *usrNam = _registeredUserPopupButton.selectedItem.title;

-selectedItem 方法returns NSMenuItem object。这反过来有一个标题 属性,这就是我认为你正在寻找的。我认为应该如下所示。

NSString *usrNam = [NSString stringWithFormat:@"%@",[_registeredUserPopupButton selectedItem.title]];