2011-11-04 151 views
2

我做一個微調使用數組,現在連我沒有選擇微調它會自動從微調陣列的第一價值的價值,我想設置默認放在微調值沒事的時候是由用戶選擇的形式微調數組值,意味着我得到我設置的默認值,當我不選擇任何價值,這是可能的,什麼是使用onNothingSelected(適配器視圖的....下面的代碼應該運行時用戶手動選擇從微調任何價值,但它始終運行並獲得第一個值是數組,所以請告訴你何時從微調選擇我沒什麼,我可以在任何選擇的方法使用如何獲得默認值..?顯示缺省值

ArrayAdapter<String> CurrencyAdapter = new ArrayAdapter<String>(this, 
    android.R.layout.simple_dropdown_item_1line, Currency); 
currency.setAdapter(CurrencyAdapter); 
currency.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() 
{ 
    @Override 
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) 
    { 
    } 

    @Override 
    public void onNothingSelected(AdapterView<?> parent) 
    { 
    } 
}); 
+0

當您發佈的代碼,請多加小心。確保代碼可讀,您可以通過刪除多餘的空行,修復縮進和保持一致來改善這一點。 –

回答

0

更好地設置數組的第一個值,這個值是你想要設置的默認值。然後,你可以檢查是否選擇了該值或其他東西,是否選擇了微調器?

+0

其實我設置數組中的第一個值是我的當前位置動態變化,用戶也允許更改從微調數組的值,例如我的當前位置是美國,我設置spineer的第一個值,我從當前的位置,和我的第二個值在微調也是美國這是靜態的,因此將有重複在微調相同的價值,所以有什麼辦法隱藏第一個值,當我點擊微調,或有什麼辦法不運行onItemSelected(AdapterView 父母, \t \t查看視圖,INT位置,長ID)未經微調所做的任何選擇? – shyam

+0

這是不可取的,從微調選項中刪除第一個項目上時,用戶spinner.Instead點擊,可以突出(使其「大膽」)顯示選擇選項在選擇,使用自定義adpater。我認爲這會奏效。 – Hiral

0

一個相關的問題我問了前兩天可以幫助你在這裏,看看How to use Android Spinner like a drop-down list,看到一些我發現有用的答案。

不,onNothingSelected()不會做你以後的事......你想看看我提到的問題中的方法setSelection()setSelectionInt()