У меня есть несколько основных объектов данных, которые содержат кучу пустых NSString
свойств.
Я анализирую некоторый XML и устанавливаю свойства, которыми могу воспользоваться, и хотел бы установить для «пустых» значение «n / a», как в «not available». Поэтому, если мой XML не содержит значений, он как бы приводит в порядок Entity, давая ему строку «n / a», которую я могу проверить позже, а также, если один из них сделает его UILabel, он не будет отображать (ноль) .. что приводит меня к моему вопросу:
Я делаю это, чтобы проверить, не установлено ли свойство объекта уже, nil или пусто:
for(NSString *s in allPossibleStrings) {
if([[f valueForKey:s] isKindOfClass:[NSString class]] && [[f valueForKey:s] isEqualToString:@""]) {
[f setValue:@"n/a" forKey:s];
}
if ([[f valueForKey:s] isKindOfClass:[NSString class]] && [f valueForKey:s] == nil) {
[f setValue:@"n/a" forKey:s];
}
}
Оказывается, однако, что я все еще получаю множество значений, отображаемых как (ноль) .
Поэтому я подумал, может ли свойство быть чем-то еще, кроме @""
пустым или (nil)
Я считаю, что NSManagedObject должен быть совместимым с KVC, поэтому я провел тест, в котором я скопировал свое свойство NSManagedObject по свойству, единственное отличие состоит в том, что он является подклассом только NSObject вместо NSManagedObject.
К сожалению, это ведет себя точно так же. Это также оставляет значения как (ноль)
Надеюсь, кто-то может понять, где я ошибаюсь с этими строковыми тестами:)
Спасибо