메뉴 건너뛰기

조회 수 7114 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

안드로이드에서 이미지 버튼을 만드는 것은 정말 쉽습니다.
C++ 등의 프로그램에서 버튼을 일일이 만들면서 작업하셨던 분들이라면 깜짝 놀랄 정도로 간단합니다.

XML을 이용해서 사용될 버튼의 이미지 설정만 해 놓은 다음,
실제 레이아웃(Layout) 관련 XML에서 해당 버튼을 background로 설정
해주기만 하면 되거든요.
간단한 예제를 보도록 하겠습니다.

res 폴더의 drawable 폴더 아래 있는 btn_play_default.xml 이라는 파일입니다.

<?xml version="1.0" encoding="utf-8"?>

<selector

xmlns:android="http://schemas.android.com/apk/res/android">


<!-- selected -->

<item 

android:state_selected="true"

android:drawable="@drawable/player_default_btn_play_p"/>

 

<!-- pressed -->    

<item 

android:state_pressed="true" 

android:drawable="@drawable/player_default_btn_play_p"/>

<!-- focused -->

<item 

android:state_focused="true"

android:drawable="@drawable/player_default_btn_play_p"/>

 

<!-- disabled -->    

<item 

android:state_enabled="false"

android:drawable="@drawable/player_default_btn_play_dim"/>     

 

<!-- default -->

<item 

android:drawable="@drawable/player_default_btn_play"/>


</selector>

이렇게 버튼이 선택되었을 경우, 눌러진 경우, 포커스가 맞춰졌을 경우, 사용하지 못할 경우 또는
기본적으로 보여줄 이미지를 설정해 놓을 수 있습니다.


그리고 실제 layout.xml 에서 다음과 같이 ImageButton을 만든다음 
background 설정을 해주면 됩니다.

<ImageButton

android:id="@+id/btnImgP_PlayAndPause"

android:layout_width="wrap_content"

  android:layout_height="wrap_content"

   android:background="@drawable/btn_play_default"/>

버튼이 클릭되었을 때나, 커서가 있을 경우 등 여러 가지 상황을 별도의 코드 입력없이 XML 만으로
간단하게 구현할 수 있습니다. +_+;


List of Articles
번호 제목 날짜 조회 수
237 EditText의 글자 수 제한 걸기 2015.07.16 13881
236 Effects - Animate() 메서드 (여러가지 효과 동시 처리) file 2014.10.16 30623
235 Effects - FadeIn() / FadeOut() 메서드 (서서히 보이기 및 숨기기) file 2014.10.16 6069
234 Effects - Show() / Hide() 메서드 (보이기 및 숨기기) file 2014.10.16 5957
233 Effects - SlideToggle() 메서드 (슬라이드 업/다운) file 2014.10.16 6758
232 Effects - SlideUp() 메서드 (슬라이드업) file 2014.10.16 5999
231 Effects - Stop() 메서드 (애니메이션 효과 멈추기) file 2014.10.16 6225
230 Events - Unbind() 메서드 (이벤트 처리기 해제) file 2014.10.16 5749
229 Firebase - 푸시알림 보내기 file 2021.09.30 339
228 Firebase - 푸시알림 보내기 (2) 2021.09.30 768
227 Fragment를 통한 하단탭 예제1 file 2020.12.14 242
226 Fragment에서 Toast 사용하기 2020.12.14 371
225 FTPClient 를이용하여 ftp상 서버에서 데이터 다운로드 편 2014.08.28 9853
224 FTPClient 를이용한 데이터 업로드 하기 2014.08.28 6366
223 HTML5 Better semantic tags file 2014.09.04 5952
222 HTML5 Form 공부하기 -1- file 2014.09.04 5841
221 HTML5 Form 공부하기 -2- file 2014.09.04 6329
220 HTML5 Geolocation (구글 지도에 현위치 표시하기) file 2014.09.04 6810
219 HTML5 Speech Input (음성인식) API 2014.09.04 6454
218 HTML5 Web Storage -01- file 2014.09.04 5587
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved