2013-03-28 18 views
7

我準備了一個表格,我必須使用相同的頁面來添加細節和編輯細節。在添加詳細信息時,所有字段將爲空,並且微調選擇將被設置爲「不選」。 現在我想設置我要從前一個活動中傳遞的項目的微調器選擇。如何實現這一點??因爲微調器沒有任何方法,所以,setSelection(String string); 或者有沒有其他的辦法,我能實現這個機制...如何通過裏面的文字設置微調器的選擇

會有人請幫我...

+0

微調是AbsSpinner的子類,AbsSpinner有一個方法爲setSelection HTTP:/ /developer.android.com/reference/android/widget/AbsSpinner.html#setSelection(int,boolean) – 2013-03-28 06:01:00

+0

@nidhi_adiga。雅這就對了。但我需要設置微調選擇的名稱不是由id,因爲我不會有我想傳遞給setSelection(int位置)的文本的id。 – 2013-03-28 06:03:39

+0

嘿,我可以這樣做嗎? category_spinner.setSelection(category_spinner_array_list.indexOf( 「cat_name」)); – 2013-03-28 06:07:04

回答

11

我現在不頻繁程度,這可能被使用,但我們可以通過設置微調的選擇通過裏面的文字。 Spinner的方法setSelection(int position);

中,我們需要通過文字,我們可以從我們使用綁定到適配器,通過 getIndexOf(Object object)和對象應該是一個聲明。例如 ArrayList類型的array_list得到的位置參數

現在,如果ArrayList是String類型,要傳遞給getIndexOf(Object object)的對象應該是String類型。

最後,設置選擇如下:

spinner.setSelection (spinner_array_list.indexOf(string)); 
13

這是我做的,它似乎做工精細

Spinner my_spinner=(Spinner)findViewById(R.id.spn_items); 
ArrayAdapter<String> array_spinner=(ArrayAdapter<String>)my_spinner.getAdapter(); 
    my_spinner.setSelection(array_spinner.getPosition("list item")); 
+0

容易理解。謝謝... – 2016-06-06 17:48:03

相關問題