차케요 2015. 3. 31. 15:56

Android Button


■ 모든 프로그램이나 어플, 웹 페이지에서 [버튼]은 필수 요소인데요. 이번 글부터는 Android Button에 대해서 알아보겠습니다. 한 번에 모두 정리하기는 힘들 거 같으니까 몇 개의 글이 연재가 될 거 같네요. 이번 글에서는 버튼을 배치하고 몇 가지 속성을 이용해서 버튼을 꾸며보겠습니다.


 그전에 먼저 버튼을 클릭했을 때 '인터넷', '전화 거는 화면', '주소록' 등에 접근해볼 건데요. 그러기 위해서 Manifest에서 사용자 권한을 설정해주겠습니다.

▲ 순서대로 전화 걸기 화면으로 이동, 전화 걸기 프로그램과 연결, 인터넷 사용, 주소록 접근 권한 등인데요. 버튼과 이것들을 연결해서 사용하기 위해서는 이렇게 user-permission을 설정해줘야 합니다. 

 

 


 다음은 디자인 편집기에서 버튼을 배치하고 XML 파일을 들여다보겠습니다. 

▲ 버튼을 끌어다 중앙에 배치했습니다. 이 상태에서 Text(XML) 소스를 확인해볼게요.


▲ Button의 기본 XML 파일의 내용입니다. 버튼의 크기와 표시되는 문자열, id, 위치 등의 기본 정보가 표시되는데요.이 버튼에는 링크를 걸어서 클릭하면 웹 페이지가 열리도록 하기 위해서 "autoLink 속성을 적용하겠습니다. 


▲ 지난 글에서 TextView 알아보면서 autoLink에 대해서 잠깐 알아봤었는데요. 이 속성을 적용하면 입력되는 텍스트가 웹 주소, 이메일, 전화번호, 지도 주소 등 일때 자동으로 링크가 연결 됩니다. Text 속성을 구글 주소를 입력했는데요. 이렇게 주소만 입력하면 자동으로 링크가 걸리게 되고, 클릭하면 해당 웹 페이지로 이동하게 됩니다.


▲ 다음은 그림과 같이 아이콘이 삽입된 버튼을 만드는 과정을 정리해볼게요. 저 아이콘은 android API에서 가져온 건데요. 아이콘을 가져와서 버튼의 왼쪽에 배치하는 코드를 보겠습니다. 먼저 버튼 객체를 편집기에 뜰어다 놓으시고요. 


▲ Properties 목록에서 Background 항목의 [...] 버튼을 클릭해서 리소스 창을 열겠습니다. 


▲ [Resources > System > Drawable > ic_menu_call] 아이콘을 선택한 상태입니다.(방향키를 이용해서 아이콘 쭉 보면 사용할 만한 것들 많이 있어요. 한 번 쭉 둘러보세요.^^)


▲ 배경으로 삽입했기 때문에 아이콘이 버튼에 꽉 차게 되는데요. 이 녀석을 왼쪽으로 옮겨보겠습니다.


▲ background 속성을 삭제하고 그 자리에 "drawableLeft"속성을 넣어줬습니다. 


▲ 그림처럼 아이콘이 텍스트의 왼쪽에 배치됩니다. 


 이렇게 해서 버튼을 배치해서 몇 가지 속성을 들여다봤는데요. 다음 글에 이어서 몇 개의 버튼을 더 클릭해서 발생하는 이벤트들을 정의하도록 하겠습니다. 수고하셨어요.