奇怪的括号?

时间:2013-05-28 09:40:51

标签: ios core-data kvc

现在请任何人如何删除奇怪的括号?

strange brackets

Tasting *tasting = [self.fetchedResultsController objectAtIndexPath:indexPath];
cell.creationDate.text = [[tasting valueForKey:@"creationDate"] description];
cell.wineName.text = [[[tasting wine]valueForKey:@"wineName"]description];

2 个答案:

答案 0 :(得分:1)

实际上wineName这里是NSSet(您可以通过{(...)}从对象描述中获知,当然还有class的日志)包含您的字符串。 假设你的Set总是只包含一个对象,你可以这样得到它:

cell.wineName.text = [[[tasting wine] valueForKey:@"wineName"] anyObject];

虽然,我不认为NSSet是保留某个对象名称的最佳选择......

最后,作为旁注......使用description向用户显示数据是一个糟糕的选择(该方法的预期用途是用于调试目的)

答案 1 :(得分:1)

好的,因此存储为wineName的对象是NSSet,这解释了为什么在调用{( "name" )}方法时以description格式获取值的原因。确切地说为什么它是一个NSSet对象我不知道,因为一个葡萄酒通常只用一个名字销售......

要以您的首选格式获取它,请不要使用description,而是将值拉出并显示如下:

NSSet *wines = [[tasting wine] valueForKey:@"wineName"];
cell.wineName.text = [wines anyObject];

您还需要使用日期列执行类似操作,使用NSDateFormatter对象将其格式化为用户首选格式。