count
не является объектом. Вам нужно использовать %d
, а не %@
. Использование %@
в качестве спецификатора формата означает «отправить метод description
объекту, который я указал в качестве аргумента». Поскольку ваша переменная count
на самом деле не является объектом, вы не можете отправлять ей сообщения.
Ваш код (сокращенный, чтобы показать пример лучше), выглядит следующим образом:
NSString *s = [NSString stringWithFormat:@"something/%@", count];
Что (в значительной степени) эквивалентно этому:
NSString *s = [NSString stringWithFormat:@"something/%@", [count description]];
Как вы можете себе представить, среда выполнения не может сделать из этого ни головы, ни хвоста (в конце концов, count
- это int
). Использование этого формата будет работать:
NSString *s = [NSString stringWithFormat:@"something/%d", count];