2012-02-28 57 views
10

我可以通过执行[NSTokenField stringValue]来获取NSTokenField的值,但这不会单独返回令牌。我试图得到的是阵列中的令牌字段,例如['token', 'token2']从NSTokenField获取令牌

对于Cocoa/Objective-c,我有点无知,所以如果我错过了明显的东西,我不会感到惊讶。

NSTokenField不响应count,所以我不确定是否有可能获得令牌。

谢谢。

+1

'stringValue'的结果中没有一致的分隔符吗?只需使用['componentsSeparatedByString:'](https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html#//apple_ref/doc/uid/20000154 -componentsSeparatedByString_)。 – 2012-02-28 21:57:18

回答

23

the Apple documentation

要检索通过在令牌字段的标记所代表的对象,发送令牌字段的objectValue消息。虽然此方法由NSControl声明,但NSTokenField实现它以返回表示对象的数组。如果令牌字段仅包含一系列字符串,则返回一个字符串数组。要设置标记字段的表示对象,请使用setObjectValue:方法,传入一组表示的对象。如果这些对象不是字符串,则NSTokenField然后查询其委托以获取用于每个令牌的显示字符串。

+0

太棒了! 如果有NSArray类型的标记@property,或者至少在NSTokenField的类参考页面上有相同的描述,那将会很棒...... 感谢您的回答 – Heartinpiece 2013-01-29 06:35:07