Jak NSBundle pathForResource: ofType: i UIImage imageWithContentsOfFile: obsługują modyfikatory skali i urządzenia?
W moim folderze zasobów iOS mam obrazy:
foo~iphone.png
foo@2x~iphone.png
foo~ipad.png
foo@2x~ipad.png
Ładuję je za pomocą:
NSString *fileName = [[NSBundle mainBundle] pathForResource:@"foo" ofType:@"png"];
UIImage *image = [UIImage imageWithContentsOfFile:fileName];
Doświadczalnie:
Na iPhone,filename
jest/path/to/bundle/foo~iphone.png
, a na iPhone siatkówki ładuje@2x
wersja.
Na iPadziefilename
jest/path/to/bundle/foo~ipad.png
i na iPadzie retina ładuje@2x
wersja.
Oznacza to, że ładuje obraz, który mam nadzieję, alepathForResource
obsługuje modyfikator urządzenia iimageWithContentsOfFile
obsługuje modyfikator skali.
Chciałbym wiedzieć dlaczego. Thedokumentacja zpathForResource
nie mówi nic o modyfikatorach urządzeń idokumentacja zimageWithContentsOfFile
nie mówi nic o modyfikatorach skali.
Czy istnieje osobna dokumentacja, która dokładnie wskazuje, co robi każda funkcja?