728x90
샘플을 통해 HTML에서 select (선택 목록)에 해당하는 Spinner의 사용법을 소개 합니다.
Spinner
Spinner는 여러개의 목록에서 값을 선택하고자 할 때 사용하는 View 이다. HTML에서 보면 select 태그와 동일한 기능을 한다.
- /res/layout/~.xml
<Spinner android:id="@+id/max_contacts" android:layout_width="200dip" android:layout_height="wrap_content" //--- 선택 목록 화면에 표시할 제목 android:prompt="@string/smartsearch_max_contacts" style="@android:style/Widget.Spinner" > </Spinner>
- /res/values/~.xml
-
- 선택 목록을 배열로 관리하면 편리 하다.
- getResources().getStringArray(
R.array.smartsearch_max_contacts_array)로 문자열 배열을 가져올 수 있다.
<?xml version="1.0" encoding="utf-8" ?> <resources> <string-array name="smartsearch_max_contacts_array"> <item>10</item> <item>20</item> <item>30</item> <item>40</item> <item>50</item> <item>100</item> <item>200</item> <item>500</item> <item>1000</item> </string-array> </resources>
- Activity
-
- implements android.widget.AdapterView$OnItemSelectedListener 를 구현 하여야 한다.
private int maxContacts = 100; private int maxContactsPos = 5; private Spinner vMaxContacts = null; ArrayAdapter<CharSequence> maxContactsAdapter= null; vMaxContacts = (Spinner)findViewById(R.id.max_contacts); maxContactsAdapter = ArrayAdapter.createFromResource(this, R.array.smartsearch_max_contacts_array, android.R.layout.simple_spinner_item); maxContactsAdapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item); vMaxContacts.setAdapter(maxContactsAdapter); vMaxContacts.setOnItemSelectedListener(this); //--- 선택값을 지정할 때마다 onItemSelected 함수가 호출 vMaxContacts.setSelection(maxContactsPos); //--- parent. 상위 View, view. 선택된 뷰 //--- position. Adapter에서 view의 위치 //-- id. 선택된 항목의 row id public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { if (parent == vMaxContacts) { maxContactsPos = position; maxContacts = Integer.parseInt( parent.getItemAtPosition(position).toString()); } } public void onNothingSelected(AdapterView<?> parent) { }
728x90
'Android' 카테고리의 다른 글
Android 다이얼로그에서 선택 (0) | 2012.07.29 |
---|---|
Android intent - Application 호출 (0) | 2012.07.29 |
안드로이드 dialog 사용방법 (0) | 2012.07.29 |
안드로이드 어플리케이션 백그라운드에서 사용 (0) | 2012.07.29 |
Conversion to Dalvik format failed with error (0) | 2012.07.29 |