스피너(Spinner)
참고 프로젝트: SpinnerDemoA1
스피너는 사용자가 여러 개의 아이템 중에서 한 개를 선택할 수 있게 해주는 뷰이다. 스피너는 일반적으로 우리가 알고 있는 컴보박스, 셀렉트박스와 많이 유사하다.
- 아이템들은 어댑터나 배열로 설정 가능
- getSelectedView() 메소드로 선택한 텍스트를 가지고 올 수 있음
- XML의 android:prompt 속성에는 반드시 문자열 자원 참조를 설정해야 함
여러 개의 아이템을 가지고 있는 스피너는 다음의 상속 계층도에서 보는 것처럼 ViewGroup을 상속하고 있는 뷰 컨테이너이다. 하지만 스피너는 뷰 컨테이너로 인식하기보다는 뷰로 인식하고 더 자주 사용하므로 여기에서 살펴보도록 하겠다.
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.widget.AdapterView <T extends android.widget.Adapter>
↳ android.widget.AbsSpinner
↳ android.widget.Spinner
스피너는 다음 그림처럼 선택박스를 클릭하면 여러 아이템들을 보여주는 뷰이다. 작은 화면에서 사용자가 다양한 선택을 해야 할 때 유용하다.
그림 3-7
참고로 다음은 안드로이드 2.3(진저브레드, Gingerbread)의 스피너이다. 안드로이드 4.0의 스피너와는 매우 다른 모습을 보여준다.