본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[Android/안드로이드] Custom View 에 대하여..

by 돼지왕 왕돼지 2012. 6. 11.
반응형




http://developer.android.com/guide/topics/ui/custom-components.html 

- 좋은 커스텀 뷰를 만들기 위해서는..

1. View 를 상속.

2. XML 로부터 생성 가능하도록, XML parameter 들을 받을 수 있는 생성자 설정

3. event listener 를 비롯하여 여러가지 custom 한 기능들 추가.

4. onMeasure() ( 기본은 100x100 사이즈로 ), onDraw() 를 구현해준다.

5. 필요한 on... 함수들을 override 해준다.


- onDraw() 는 paramter 로 Canvas 를 전달해준다. 이 녀석에 draw 하는것이 view 가 된다.


- 3D View 를 원한다면 View 가 아닌 SurfaceView 를 상속해주고, 그리는 것을 다른 thread 에서 해주어야 한다.


- onMeasure() 에서는 해당 view 가 그려질 size 를 결정해준다. 이 size 는 부모 view 에 dependent 하며, setMeasuredDimension() 함수를 통해 set 해준다.


- onMeasure() 에서는 parent 에서 수용가능한 size 보다 크게 설정도 가능한데, 이 경우에 parent 는 clip 을 할지, scrol을 할지, exception 을 던질지 등을 명시해주어야 한다.



도움이 되셨다면 손가락 꾸욱~




반응형

댓글