Programming/Study

xcode iPhone 4Inch 대응 이미지 사용 법

어썸 2012. 12. 18. 21:03


이번에 아이폰 5가 해상도 (640x1136 px)로 변경되면서 뷰화면들을 

다시 설정해 줘야하는 상황이 되었습니다.

 

기존에 프로젝트에는 이미지를 넣을때 

 

image.png , image@2x.png 로 만들어 두면 코딩에 @"image.png"만 넣어도 

아이폰4 시뮬레이터에서 자동으로 @"image@2x.png" 로 읽어 들였는데요.

 

이번에 아이폰 5에서 4인치 해상도로 변경되면서 image-568@2x.png로 변경하면 

들어간다고해서 넣어 보았으나...

 

이건 Default 이미지에만 해당하는 내용이었습니다. 살짝 좌절.... ㅋ

 

하지만! 저희에게는 최고의 서포터가 있지 않겠습니까? 바로!!! 구글링~

 

검색 결과 :  http://stackoverflow.com/questions/12497776/new-image-name-for-iphone-5

 

에서 찾아 내었습니다.

 

정리하자면 먼저 코딩 상단에 #Define으로 해상도를 잡아주고 사용시에 약간의 코딩 수정만 

하면 되는 겁니다.

 

Here we go~!


// iPhone 5 support
#define ASSET_BY_SCREEN_HEIGHT(regular, longScreen) (([[UIScreen mainScreen] bounds].size.height <= 480.0) ? regular : longScreen)

ㄴ여기 까지가 상단에 잡아주는 #define 부분


Usage: (assets names - image.png, image@2x.png, image-568h@2x.png)

ㄴ 이미지를 3개 준비합니다. 순서대로 (아이폰 3, 아이폰4, 아이폰5 )용 이미지들입니다. 



myImage = [UIImage imageNamed:ASSET_BY_SCREEN_HEIGHT(@"image",@"image-568h")];

ㄴ 이미지 사용시 상단에 만들어 두었던 #define을 사용해서 이미지 이름만 넣어주면 됩니다.

 

이것으로 해결~!