2010-10-08 3 views
0

У меня есть простое приложение (это мой первый один), который загружает изображение из папки Мои ресурсы, я изменить свой имидж, как это (с именем изображения меняющегося):IPhone App Сбои на устройстве

myUIImageView.image = [UIImage imageNamed:@"nextImage.jpg"]; 

Он отлично работает в приложении. Я могу изменить изображение бесконечно много раз. Но когда я запускаю его на своем Ipod Touch, он падает после того, как изображение изменится примерно 4 раза. Нужно ли мне снимать изображение, когда я его меняю? Это, безусловно, проблема памяти,

Я должен упомянуть, что каждое изображение похоже на 200kb.

Консоль читает это, когда он выходит из строя:

Program received signal: “0”. 
Data Formatters temporarily unavailable, will re-try after a 'continue'. (Unknown error loading shared library "/Developer/usr/lib/libXcodeDebuggerSupport.dylib") 

Любой совет поможет, Спасибо!

+1

Эта строка не должна разбиваться, и вам не нужно ее отпускать, так как imageNamed: дает объект с автореализацией. Пожалуйста, укажите больше кода, или сообщение об ошибке сбоя и stacktrace. – Altealice

+0

Эта линия не может быть виновницей, потому что это прекрасно. [UIImage imageNamed] является autorelease, а myUIImageView.image сохраняется. Проблема может быть в другом месте, вы освобождаете свой myUIImageView? – Manny

+0

Я не выпускаю его, жаль, что я немного новичок в этой области, я запустил его на своем устройстве с Монитором активности, а размер виртуальной машины кажется действительно высоким, как мне выпустить myUIIMageView? –

ответ

1

Когда вы говорите, что он работает очень хорошо, вы имеете в виду, что он отлично работает на симуляторе?

Я обнаружил, что нехорошо проверять проблемы с памятью на симуляторе: он имеет тенденцию быть слишком мощным по сравнению с фактическим устройством. Ошибка может быть вовсе не в коде обмена изображениями.

Я рекомендую вам ознакомиться с кодом и проверить наличие утечек. Также контролируйте его с помощью инструментов-> Утечки во время работы на устройстве, а не на симуляторе.

1

Проверьте, не отпущен ли объект. Это действительно похоже на неправильное использование метода release.

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