2015-11-18 3 views
-3

Вчера у меня появилось сообщение об ошибке в моем приложении, оно было на ios7.1, когда я использую KVC для установки значения типа BOOL, источник данных равен «0», и я получаю эти сообщение об ошибкеОшибка значения BOOL на ios7

Нагрузочного приложение из-за неперехваченное исключением 'NSInvalidArgumentException', причину: '- [__ NSCFConstantString charValue]: непризнанный селектор направил к экземпляру 0xa2030'

Это было нормально в ios8 и позже, bool имеют некоторые отличия в armv7 и armv7s или разные остроумие h BOOL?

+1

Я не вижу, как этот код когда-либо работал, если указатель на константу строки просто не был передан BOOL, и вам повезло, что он никогда не устанавливал неправильное значение. – Avi

+0

показать код, в который вы добавили значение bool в массив, –

+0

@ Anbu.Karthik Я не добавлял bool в массив, это только свойство в классе, код только [self setValue: @ "0" forKey: @ "_boolValue"]; –

ответ

0

попробовать это

если вы установите значение BOOL использовать NSNumber numberWithBool для магазина, например

изменение этой

[self setValue:@NO forKey:@"_boolValue"] 

в

[self setValue:[NSNumber numberWithBool:NO] forKey:@"_boolValue"]; 
+0

проверить обновленный ответ bro –

+0

да, я знаю, что это работает, но я хочу знать, почему он хорошо работает в ios8 –

+0

может быть контроль версии, он возникает, –

Смежные вопросы