现在请任何人如何删除奇怪的括号?
Tasting *tasting = [self.fetchedResultsController objectAtIndexPath:indexPath];
cell.creationDate.text = [[tasting valueForKey:@"creationDate"] description];
cell.wineName.text = [[[tasting wine]valueForKey:@"wineName"]description];
答案 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
对象将其格式化为用户首选格式。