objective c - imageNamed returns nil on iOS 7 but not iOS 8 -


i have images various time intervals. example "1.5d-4h.png", aka between 4 hours , 1.5 days. have regular @2x , @3x assets each interval image , i've made sure they're pngs (not jpgs) reason interval images fail load via imagenamed on ios 7. ios 8 devices correctly load possible interval images.

from further testing looks on ios 7 if qualify name imagenamed succeeds of these images e.g.

(lldb) po [uiimage imagenamed:@"1.5d-4h.png"] <uiimage: 0x7ec390>  (lldb) po [uiimage imagenamed:@"1.5d-4h"]  nil 

an example of image loads succesfully on both ios 7 , 8:

(lldb) po [uiimage imagenamed:@"10-9d"] <uiimage: 0x10cc290> 

here's full set of time intervals:

@"4h-0min" @"1.5d-4h"   // fails @"4.5-1.5d"  // fails @"5.5-4.5d"  // fails @"7-5.5d"    // fails @"9-7d" @"10-9d" 

any suggestions?

it seems image names '.' in them fail load.

try escaping '.' characters or rename images not have '.' character in names.


Comments