Невозможно загрузить изображение из xcassets на iOS 9

У меня есть несколько изображений, хранящихся в моем Images.xcassets, которые я загружаю как через код, так и через интерфейсный конструктор. Однако обновление iOS 9 сломало все: изображения не отображаются ни при загрузке из кода, ни из IB.

Все работало нормально, за исключением того, что изображения больше не загружаются.

Скажем, у меня есть изображение с именем Image в моем файле .xcassets. На iOS 8,

 [UIImage imageNamed:@"Image"]

вернул действительный указатель, но он возвращает nil на iOS 9. То же самое происходит в Interface Builder: все UIImageView, установленные из IB, пусты.

Однако есть два исключения: два маленьких (48x48) изображения действительно загружаются правильно. Я заметил, что они оба скомпилированы в Assets.car, все остальные сидят как png и jpeg в основном каталоге... Но конфигурация одинаковая далеко не у всех изображений.

Этой проблемы не было на iOS 8.

Есть идеи ?


person Tuetuopay    schedule 29.09.2015    source источник


Ответы (1)


Ответ в том, что я использовал JPEG. Похоже, что Xcode 7 теперь требует, чтобы параметры Render As были установлены на Original Image, хотя Xcode 6.1 должен был также требовать этот параметр (из этот поток SO). Однако раньше работало и без него... (Я начинал проект на Xcode 6.1).

Решение состояло в том, чтобы изменить параметр Render As с Default на Original :

person Tuetuopay    schedule 29.09.2015