цель C строка путаница - PullRequest
       13

цель C строка путаница

0 голосов
/ 12 марта 2010

У меня есть код

NSString *cellValue1 = [products1 objectAtIndex:indexPath.row];

когда я пытаюсь напечатать NSLog(@"cell value is %@",cellValue1);

в логе я ничего не получаю, если я использую% s, я получаю некоторые символы, а не строку, расположенную в cellValue1.

Пожалуйста, помогите мне.

Заранее спасибо.

Ответы [ 3 ]

1 голос
/ 12 марта 2010

Это, безусловно, означает, что ваша строка пуста ... Проверьте это методом длины ...

1 голос
/ 12 марта 2010

Убедитесь, что products1 действительно установлено. Звучит так, как будто это ноль, когда вы отправляете сообщение -objectAtIndex:.

0 голосов
/ 12 марта 2010

Решение:

NSString *cellValue1 = [products1 objectAtIndex:indexPath.row];
NSLog([NSString stringWithFormat:@"Cell Value is %@", cellValue1]);

Причина: NSLog работает со строковыми входами. Хотя ваш оператор должен работать, если есть какая-то / любая проблема с вашей исходной строкой cellValue1, ваш оригинальный оператор не уловит проблему и не гарантирует, что NSLog () передается чистой строкой. Используя синтаксис stringWithFormat: вы гарантируете, что даже если ваши значения cellValue1 равны нулю или нулю, вы получите «значение ячейки» комментарий и, возможно, некоторую подсказку относительно того, что передается в утверждение вашим строка cellValue1.

Примечание по тестированию: Если вышеупомянутое не работает для вас, протестируйте исходную строку, используя NSLog(cellValue1);. Если это не сработает, это скажет вам, что ваш исходный NSString неправильно вытягивает ваш продукт со значениями indexPath.row.

Надеюсь, это поможет!

...