Spinner 是基本的元件,紀錄一下其在程式中動態和靜態給值的使用方法

 

首先在 layout 的 xml 中宣告 Spinner 元件

<Spinner android:id="@+id/spnSex"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:textSize="20sp"
android:drawSelectorOnTop="true"
android:prompt="@string/spnSexPrompt"
/>

 

Activity 中 透過以下方式取得元件 

Spinner spnSex = (Spinner)findViewById(R.id.spnSex);

 

動態方式給值:

程式中宣告陣列:

String[] sSexList = new String[] {"", ""}; 

建立一個 String 型別的 ArraryAdapter,將陣列丟給它:

ArrayAdapter<String> adapSexList = new ArrayAdapter<String>(
this, android.R.layout.simple_spinner_item, sSexList);

將 ArrayAdapter 設為 spinner 格式:

adapSexList.setDropDownViewResource(android.R.layout.simple_spinner_item);

 

靜態方式給值:

在 strings.xml 中加入

<string-array name="spnSexList">
<item></item>
<item></item>
</string-array>

建立一個 CharSequence 型別的 ArraryAdapter,直接用 createFromResource() 從 R.java 建立物件:

ArrayAdapter<CharSequence> adapSexList = ArrayAdapter.createFromResource(
this, R.array.spnSexList, R.layout.spinner_layout);

 

把 ArrayAdapter 設給 Spinner 元件:

spnSex.setAdapter(adapSexList);

設定 Spinner 事件發生時的 Listener:

spnSex.setOnItemSelectedListener(spnSexItemSelLis);

宣告觸發 Spinner 事件發生時 Listener 所做的事:

private Spinner.OnItemSelectedListener spnSexItemSelLis =
new Spinner.OnItemSelectedListener () {
public void onItemSelected(AdapterView parent, View v, int position, long id) {
sSex = parent.getSelectedItem().toString();
}
public void onNothingSelected(AdapterView parent) {
}
};

 

 簡單簡單,這次就不罵幹你娘了。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 擒猿小舖 的頭像
    擒猿小舖

    擒猿小舖

    擒猿小舖 發表在 痞客邦 留言(0) 人氣()