2015년 3월 30일 월요일

android 에서 Spinner 사용(drop down list)

일반적으로 여러개의 미리 주어진 list중에 하나를 선택하는것을 drop down list라고 하는데
안드로이드에서는 spinner라고 불립니다.
안드로이드에서 spinner 사용하여 ui적으로 표시하고 저장하는 코드예제를 만들어 보았습니다.

화면에 표시되는 부분은 layout xml 파일에서 결정합니다. entries에 리스트에 표시될 항목들을 array에 담습니다.
    <Spinner
        android:id="@+id/spinnerPollingPeriod"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:entries="@array/PollingPeriod_arrays"
/>

array는 strings.xml 파일에 만들어 줍니다.
<string-array name="PollingPeriod_arrays">
        <item>30</item>
        <item>60</item>
        <item>90</item>
        </string-array>

Spinner spinnerPollingPeriod; // spinner를 정의해주고요

        // onCreate 시에는 값을 읽어와서 setSelection 메소드를 이용해서 현재 spinner값을 설정하게 됩니다.
protected void onCreate(Bundle savedInstanceState) {
                ....
int intspinnerPollingPeriod = pref.getInt("spinnerPollingPeriod", 1);
spinnerPollingPeriod = (Spinner)findViewById(R.id.spinnerPollingPeriod);
spinnerPollingPeriod.setSelection(intspinnerPollingPeriod);

                .... 저장시는 아래와 같이 getSelectedItemPosition 메소드를 이용합니다.
SharedPreferences pref = getSharedPreferences("pref", Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = pref.edit();
                                ....
editor.putInt("spinnerPollingPeriod", spinnerPollingPeriod.getSelectedItemPosition());

editor.commit();


댓글 없음:

댓글 쓰기