我有一个UIPickerView
用于列出CoreData实体的数据。数据输出总是包含实体的属性名称和我认为是CoreData格式的无关字符;例如,以下是NSLog
输出我看起来像:
NSLog(@"%@",roomNames); output: ( { roomName = "Living Room"; } )
以下是我用于从选择器视图中提取数据的代码:
- (void) pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
NSString *resultString = [[NSString alloc] initWithFormat:@"%@",[roomNames objectAtIndex:row]];
roomTxt.text = resultString;
}
我无法确定字符的来源或如何从输出中删除它们。
非常感谢任何帮助。
答案 0 :(得分:0)
罪魁祸首就是这条线。
NSString *resultString = [[NSString alloc] initWithFormat:@"%@",[roomNames objectAtIndex:row]];
%@
调用对象的descriptionWithLocale:或description:方法。它不是用于获取对象的字符串值,而是用于字符串形式的描述。看起来它只是记录所有属性的名称/密钥对。
描述方法由NSObject实现,以返回对象的类和内存地址,但许多Cocoa和Cocoa Touch 类覆盖它以提供更有用的信息。 (来自Working With Objects)
您需要属性的值。从roomNames中提取了什么类型的对象?