공부/안드로이드 17

[안드로이드] 이벤트 처리

이벤트는 화면의 어느 부분을 어떻게 클릭하거나 터치했는지에 대한 정보를 담고있다. 이 이벤트는 리스너로 전달된다. 따라서 버튼에 리스너를 등록해두면 버튼이 클릭될 때마다 리스너의 메소드가 자동으로 호출되게 된다. 이벤트의 종류는 터치 이벤트, 클릭 이벤트, 키 이벤트 등 다양하다. 클릭 이벤트를 처리하기 위해 OnClickListener라는 인터페이스를 구현하는 객체를 만든 후 버튼에 등록합니다. 그런데 버튼을 클릭하는 경우는 워낙 많아서 더 쉽게 이벤트를 처리할 수 있도록 onClick속성을 추가로 제공해줍니다. XML레이아웃에서 onClick 속성의 값으로 메소드의 이름을 넣어주고 그 메소드를 소스코드에 추가하여 구현합니다. 터치 이벤트는 onTouchEvent 메소드를 재정의하고 키 이벤트는 onK..

[안드로이드] 드로어블

드로어블(Drawable) 드로어블은 뷰에 설정할 수 있는 객체이며 그래픽으로 그릴 수 있다. 드로어블은 소스코드에서 만들 수도 있고 XML에서 정의할 수도 있는데 XML로 만들어 사용하는 경우가 많다. 드로어블 XML파일은 /res/drawable 폴더 안에 넣어서 마치 이미지처럼 뷰의 배경으로 설정할 수 있다. 비트맵 드로어블(BitmapDrawable) : 이미지 파일을 보여줄 때 사용한다. 상태 드로어블(StateListDrawable) : 상태별로 다른 그래픽을 참조할 수 있다. 전환 드로어블(TransitionDrawable) : 두 개의 드로어블 간에 바뀌도록 한다. 쉐이프 드로어블(ShapeDrawable) : 색상과 그라데이션을 포함하여 도형 모양을 정의할 수 있다. 인셋 드로어블(Ins..

[안드로이드] 위젯

텍스트 뷰(TextView) 화면에 글자를 표시한다. 1. Text속성에 직접 글자를 넣을 수 있다. 2. /res/values 폴더 안에 strings.xml 파일 안에 넣어둔 태그의 값으로 설정할 수 있다. 버튼(Button) 체크박스 라디오 그룹 - 라디오 버튼 에디트텍스트(EditText) 사용자가 입력한 글자를 받고 처리하는 기능을 제공한다. 많이 사용되는 속성으로 inputType이 있다. inputType속성은 어떤 유형의 글자를 입력할 지 결정하는 속성이다. hint속성은 글자를 입력하지 않았을 때 희미하게 보이는 안내글을 표시한다. 이미지뷰(ImageView) /res/drawable 에 이미지 파일을 넣고 이미지뷰에 설정할 수 있다.(png형식 권장) android:src = "@dra..

[안드로이드] 레이아웃

제약 레이아웃(ConstraintLayout) 프로젝트를 처음 만들었을 때 자동으로 만들어지는 레이아웃이다. 최상위 태그는 화면 전체를 담고있는 레이아웃이다. 제약조건(연결선)을 이용해 그 안에 추가된 뷰들의 위치를 결정한다. 리니어 레이아웃(LinearLayout) 상자를 쌓듯이 뷰를 하나씩 쌓을 수 있는 레이아웃이다. 아래로 쌓을지 오른쪽으로 쌓을지 결정해야 한다. 방향 속성인 orientation 속성을 이용해 가로방향은 Horizontal, 세로방향은 Vertical로 지정한다. (android:orientation = "vertical") 레이아웃 안에 레이아웃을 넣어 각각의 orientation 속성을 설정하여 복잡한 화면을 만들 수 있다. 정렬 : layout_gravity 와 gravity..

[안드로이드] 뷰

뷰 : 안드로이드 기본 화면을 구성하는 모든 요소 눈에 보이는 뷰 : 위젯 눈에 보이지 않는 뷰 : 레이아웃 레이아웃 안에 다른 뷰를 담을 수 있다. 레이아웃은 뷰를 상속하여 정의되었기 때문에 레이아웃 안에 레이아웃도 담을 수 있다. 화면을 구성할 때는 XML파일을 만들게 되는데 XML파일 안에는 태그와 속성들이 들어간다. 가로와 세로의 크기가 필수 속성이므로 layout_width, layout_height 속성은 반드시 넣어야 한다. 속성 앞에 붙어있는 android: 라는 지시어는 안드로이드 SDK에서 정의한 속성이라는 의미이다. 크기를 지정하는 방법 1. match_parent : 상위 뷰의 크기에 맞춤 2. wrap_content : 뷰 안에 들어있는 내용물의 크기에 맞춤 3. dp, px 같은..