이미지와 텍스트가 같이 들어간 버튼 만들기
안드로이드 SDK(1.5기중)에는 버튼을 처리하는 클래스가 Button과 ImageButton 크게 두가지 있다.
ImageButton이 내부에 이미지를 가지고 있는 버튼이고, Button은 TextView를 상속하고 있기에 텍스트 버튼이라고 생각하기 쉬운데, 사실 그렇지 않다.
일반적으로 버튼을 표시할때 간단하게 해당 버튼의 기능을 시각화 하여 나타내는 간단한 Icon을 함께 넣어주는 경우가 많을텐데, 그런 경우 ImageButton대신 Button을 활용해서 처리할 수 있다.
이미지의 위치는 텍스트의 상, 하, 좌, 우에 위치시킬 수 있으며, Xml에서는 각각 android:drawableTop, android:drawableBottom, android:drawableLeft, android:drawableRight에 drawable값을 넣어줌으로써 처리 가능하다.
그리고 텍스트와 이미지 사이의 간격은 android:drawablePadding 값으로 설정할수 있다.
<Button
android:layout_width="fill_parent"
android:layout_width="wrap_content"
android:drawableLeft="@drawable/ic_settings"
android:drawablePadding="4dp"
android:text="Settings"
/>
drawableLeft를 넣어서 만든 버튼의 모습이다.
혹시나 어렵게 직접 Layout을 써서 버튼을 구성하시고 계시는 분들이 있을까 하여 팁을 작성하였다.
아이콘이 들어간 Android Button
안드로이드 어플을 작성한지 1년 반이 되가는데 가끔 새로나온 SDK의 기능을 못보고 옛날 스타일로 작성하는 경우도 종종 있고, 웹의 소스들도 오래된 것들이 많아서 새로 SDK나올때마다 중요한 부분들은 정리를 해서 체크해봐야하는데, 사실 쉬운일은 아니다. 사실 옛날 옛적에는 그림 들어간 버튼을 직접 작성해서 써야 했었다고 한다.
'개발자의 기록 노트 > Android' 카테고리의 다른 글
[안드로이드] ADT 8.0.0으로 업데이트 후의 draw9patch 에러 (0) | 2011.01.17 |
---|---|
[안드로이드] Preferences 다루기 - 앱의 환경설정을 위한 Class (0) | 2011.01.09 |
[안드로이드] 서로다른 Activity 사이에 Parcelable사용하여 데이터/객체 전달 및 받는 방법 (0) | 2010.12.30 |
[안드로이드] Bitmap 과 ByteArray 상호변환 (0) | 2010.12.27 |
[안드로이드] 인터넷에서 이미지 비동기 다운로드 (0) | 2010.12.25 |
[안드로이드] 증강현실 구현을 위한 기초 개념, 벡터(Vector)와 노름(Norm) (0) | 2010.12.25 |