본문 바로가기

프로그래밍/안드로이드

[안드로이드/Android] 안드로이드 갤러리

안드로이드 갤러리(Gallery)


java.lang.Object

└ android.view.View

└ android.view.ViewGroup

└ android.widget.AdapterView<T extends android.widget.Adapter>

└ android.widget.AbsSpinner

└ android.widget.Gallery


안드로이드 갤러리란?


갤러리란 뜻은 혼자만의 머릿속에는 존재하지만 누군가에게 설명하기에는 참 애매하더군요. 그래서 백과사전에 한번 찾아 보았습니다.


갤러리 [ gallery ] 네이버 백과사전

 골프에서 경기를 관전하러 온 관중을 말한다.


본문과 상관은 없지만 저는 처음 접한 뜻이라 한번 올려 봤습니다. 이제 진짜로 돌아 가겠습니다.


미술관 [ 갤러리 ] 위키백과

미술관(美術館)이란, 미술작품을 중심으로 한 문화유산이나 현대의 문화적인 유산을 수집·보존·전시하고, 문화에 관한 교육·보급·연구를 행하는 시설이다.


위키백과에 나와있는 것처럼 안드로이드에서 갤러리도 마치 미술관의 그림들 처럼 이미지들을 한장한장 나열해 놓은 형태를 가지고 있습니다.

안드로이드에서는 여러개의 이미지를 좌우 수평으로 스크롤되는 어댑터 뷰의 일종으로 중간에 현재 선택된 이미지가 보이며 좌측에는 이전이미지 우측에는 이후 이미지들이 표시가 됩니다. 


그럼 먼저 안드로이드 갤러리만의 속성을 한번 살펴보도록 하겠습니다.


xml 속성 이름 

자바 메소드 이름 

설명 

 android:animationDuration    setAnimationDuration(int)

 layout이 바뀔때 변환되는 애니메이션의 설정시간( 밀리세컨드)

 android:gravity    setGravity(int)

 샐들의 정렬을 설정.

 android:spacing

 setSpacing(int)  간격 설정
 android:unselectedAlpha  setUnselectedAlpha(float)

선택되지 않은 녀석들의 알파값 설정


그럼 이제 간단한 예제를 통해 좀더 상세히 알아 보도록 하겠습니다.  만들고하 하는 녀석의 결과는 아래와 같습니다.


res/layout/main.xml

먼저 메인 레리아웃인 main.xml안에 위와 같이 작성합니다. 보시는 바와 같이 전체 화면을 Gallery로 만들었습니다.


HelloGallery.java

㉠ - HelloGallery.java파일 안에 갤러리를 main.xml로 부터 읽어 옵니다.
㉡ - 갤러리에다가 어댑터를 설정합니다. 어댑터의 상세 설정은 하단에 나와 있습니다.
㉢ - 보여지는 갤러리중 하나의 이미지를 선택했을때 어떤 행위를 하기 위해 이벤트를 설정합니다. 지금은 간단히 토스트만 띄웁니다.


res/values/attrs.xml



ImageAdapter.java

위에 대한 상세 내용들은 이미 앞 포스팅에서 설명을 모두 했습니다.  그러하니 확인하시고 궁금하신 사항들은 댓글로 남겨주시면 되겠습니다.


     리스트뷰 기초      ☞ http://jwandroid.tistory.com/230



이로써 자주 쓰이는 어댑터 관련 포스팅을 모두 마치게 되었습니다. 잘 모르겠다 싶은 것들은 다시 한번더 읽어 보시구요. 언제든지 궁금하신 사항들은 댓글로 남겨주시면 최대한 알려드리도록 노력하겠습니다.