도래울

iOS Images.xcassets 사용하기 본문

개발/iOS

iOS Images.xcassets 사용하기

도래울 2016. 11. 1. 17:51

며칠전 운영체제인 iOS7과 iPhone5s와 iPhone5c라는 두가지 디바이스 버전이 발표되었다. 신제품이 출시되면 소비자들은 즐겁겠지만 개발자는 마냥 즐겁지는 않다. 만들어 놓은 앱이나 지금 진행중인 플젝에 반영해야 하기 때문이다.(일이 늘어난다는 얘기임.)

마치 군복무중에 눈이 내리는 장면을 상상하면 딱 맞을듯 싶다.


내 경우는 스마트폰 개발 특성상 안드로이드 개발자들과 일을 같이 하는데 ( 뭐 안드개발자들 바쁘면 도와주기도 한다) 이 디바이스별 대응이라는게 참 손이 많이가는 작업이다. 테스트를 다 할수 없는 거고 안된다고 크레임들어오고.. 대책이 없는거다.


그나마 다행이랄까 애플에서 개발자를 배려해 XCode5의 새로운 기능이 추가되었다.

디바이스별 이미지를 관리하는 어셋기능(Asset)이다.


테스트 해보니 기존소스와도 호환성이 있어 예전방식으로 코딩해도 기본적으로는 인식하는듯 하다.

어쨋든 서론이 길어졌지만 직접 해보지 않으면 답답하니 샘플을 만들어 보자.


우선 샘플 프로젝트를 만들고 UIImageView를 배치 IBOutlet로 선언후 연결해 놓는다.




그리고 이미지명을 "animal" 로 지정해서 불러들인다.

그리고 XCode5에 새로생긴 Images.xcassets 폴더를 선택한 후 오른쪽 마우스를 클릭하여 Image Set 을 추가한다.

참고로 폴더를 만들수도 있고 이외 여러가지 메뉴가 있다.




기본으로 Image라는 이름으로 추가되므로 이 이름을 "animal"로 변경해준다.




위의 작업을 해주면 프로젝트내에 폴더가 생성되는데 이곳에다가 사용할 이미지를 복사한다.



펭귄, 코알라, 고양이들을 복사해주자.



복사함과 동시에 XCode상에 추가된 이미지를이 보이기 시작한다. 

오른쪽 프로파티에 속성을 그림과 같이 변경해준다.



각각 동물들을 필요한 곳에 드롭다운 해준다. 




이제 시뮬레이터 버전을 변경해 가면서 표시되는 이미지를 확인해보자. 역시 예상대로 잘 표시된다.



Asset기능과 AutoLayout기능을 적절히 사용하면 디바이스 화면사이즈에 대응하는것이 그리 귀찮은 일은 아닐것 같다.

예전방식에 익숙해서 AutoLayout기능은 쓰질 않았었는데 나중에 한번 더 연구해 볼생각이다.


출처 : http://dolfalf.tistory.com/62



Comments