Это очень сложный вопрос, потому что я не хочу наводнить вас всем своим кодом, поскольку большинство из них не укладывается в проблему. Поэтому я не удивлюсь, если это останется без ответа. Хотя, это может быть что-то простое, что мне не хватает ха-ха. Вот оно:Приложение Objective-C iOS не хранит данные в массиве объектов
Итак, мое приложение хранит массив через [encoder] в моем приложении appDelegate. Приложение заполнено объектами, которые создаются в отдельном классе NSObject. Подумайте об этом таким образом для примеров: У меня есть мой основной класс viewController. И в appDelegate я определяю/кодирую массив объектов. Теперь, в основном, я заполняю массив 10 «машинами». Мой класс автомобиля имеет такие переменные, как цвет, модель, модель и т. Д. Теперь, когда я сохраняю и перезапускаю приложение, массив, который я сохранил, теперь представляет собой массив, содержащий 10 элементов, но, похоже, он забыл все переменные для каждый экземпляр класса автомобиля.
Когда я перезапускаю приложение, если я вызываю NSLog (@ "% @", массив в appDelegate); Он печатает 10 строк, которые выглядят так: «" Итак, я знаю, что массив хранится с 10 элементами, а 10 элементов сохранены, но, как я уже сказал, все переменные исчезли.
Примечание: при первом запуске приложения, и массив заполняется в первый раз, я могу получить доступ ко всем переменным отлично, и ничего не получается.
Спасибо за любую помощь, которую я могу получить!
Пожалуйста, разместите код для внедрения initWithCoder и encodeWithCoder в классе «автомобиль». Если вы их не реализовали, это ваша проблема. – Wain
ха-ха да, это была моя проблема. Я видел это вскоре после публикации. Я уже сохранил строку из другого класса и полностью забыл о том, что в коде/encodeWithCoder hahaha. Спасибо! Опубликуйте то, что вы сказали как решение, и я помечаю его как ответ. –
Спасибо, я добавил немного больше, чтобы помочь будущим читателям :-) – Wain