2010-01-29 57 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); 
相关问题