CODEDRAGON ㆍDevelopment/Android
어댑터뷰(AdapterView)
· 자식 뷰들과 그것들을 관리하는 어댑터를 갖는 뷰
· 리스트 형식으로 자식 뷰들을 배치하는 뷰들은 어댑터 뷰라는 특성을 가집니다.
· 모든 어댑터 뷰들은 ViewGroup 클래스와 AdapterView 클래스를 상속
· 모든 어댑터 뷰에는 어댑터 패턴(adapter pattern)이라는 디자인 패턴(design pattern)이 적용되어 있습니다.
· AdapterView는 ViewGroup을 상속받으며 어댑터(adapter)라는 객체를 갖는다는 점이 특징입니다. 어댑터는 어댑터 뷰와 자식 뷰들 사이를 이어주는 중간 역할을 하게 됩니다. 어댑터는 자식 뷰들을 정의하고, 어댑터 뷰는 어댑터를 통해 이들에 접근할 수 있습니다.
어댑터뷰(AdapterView) 계층도
AdapterView를 상속받은 클래스는 집합을 표시한다는 면에서 동일하지만, 항목을 표시하는 방법은 각 클래스마다 다릅니다.
종류 |
설명 |
AbsListView |
리스트 형식으로 자식 뷰들을 보여주는 어댑터 뷰들의 공통점들을 정의한 추상 클래스입니다. |
ExpandableListView |
ListView를 상속 받습니다. Expandable ListView은 확장 가능한 항목을 리스트에 추가할 수 있는 기능이 추가되었습니다. |
Spinner |
드롭다운 선택 기능을 구현한 클래스 . 사용자가 터치하면 별도의 자식 뷰를 오픈하여 리스트를 보여줍니다. Spinner의 자식 뷰들을 위 또는 아래로 회전시킬 수 있습니다. |
ListView |
뷰 객체들을 수직 방향의 목록 형태로 보여줍니다. |
GridView |
뷰 객체들을 고정된 개수의 열들로 이루어진 격자(grid)형태로 배치시킵니다. |
AutoCompleteTextView |
입력 필드에 글자를 입력하면 해당 글자의 자동 완성된 리스트를 보여줍니다. |
Gallery |
진열, 전시형식으로 선택 아이템을 보여줍니다. 자식 뷰을 가로로 나열하고, 사용자는 나열된 항목들을 왼쪽이나 오른쪽으로 회전시킬 수 있습니다. |
어댑터뷰 패턴 도식도
· 선택위젯은 어댑터를 통해 데이터를 설정합니다.
· 어댑터에서 만들어주는 뷰를 이용해 ListView의 한 아이템을 보여주게 됩니다.