2010-01-29 81 views

回答

7

通過向Spinner的ArrayAdapter調用ArrayAdapter.add

+0

也選擇謝謝非常多的它的工作 – deepthi 2010-02-16 10:48:44

27
Spinner spinner = (Spinner)findViewById(R.id.mySpinner); 
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, android.R.id.text1); 
spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
spinner.setAdapter(spinnerAdapter); 
spinnerAdapter.add("value"); 
spinnerAdapter.notifyDataSetChanged(); 

上面是陣列適配器的情況下,我相信你知道如何用ArrayAdapter填充值。

我們如何在SimpleCursorAdapter的情況下做到這一點,即如果我們有2個spinners,並且如果我們根據一些標準選擇一個spinner的值(即從SimpleCursorAdapter獲取值),則應該用另一個spinner填充值。我們如何實現這一目標?

+1

非常感謝您分享代碼 – praveenb 2012-03-28 10:05:48

0

您可以按照這種方式

public static void selectSpinnerItemByValue(Spinner spnr, long value){ 
SimpleCursorAdapter adapter = (SimpleCursorAdapter) spnr.getAdapter(); 
for (int position = 0; position < adapter.getCount(); position++) 
{ 
    if(adapter.getItemId(position) == value) 
    { 
     spnr.setSelection(position); 
     return; 
    } 
} } 

您可以用上面的一樣:

selectSpinnerItemByValue(spinnerObject, desiredValue); 

您可以通過索引直接像

spinnerObject.setSelection(index); 
相關問題