2016-11-07 84 views
0
final Spinner spinner = (Spinner)findViewById(R.id.spinnerNumber); 
     List<Integer> list = new ArrayList<>(); 
     for (int j = 0; j < 51; j++) { 
      list.add(j); 
     } 

     ArrayAdapter<Integer> dataAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, list); 
     dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spinner.setAdapter(dataAdapter); 

我想在此微調器中設置選定的項目。通常我會在setSelection()的內部插入我想要設置的元素的位置spinner.setSelection()。這一次,我放入setSelection()的所有內容都沒有產生任何效果,我的微調器仍然設置爲0 ...我錯過了什麼?Android:在整數微調器中設置所選項目問題

+0

什麼是您的要求嗎? – sasikumar

+0

你在'setSelection'方法中傳遞了什麼值...? – sushildlh

+0

當然是。想象一下,我想要選擇的數字2我會通過'setSelection(2)' –

回答

1

試試這個

Spinner spinner = (Spinner)findViewById(R.id.spinnerNumber); 
    final List<Integer> list = new ArrayList<Integer>(); 
    for (int j = 0; j < 51; j++) { 
     list.add(j); 
    } 

    ArrayAdapter<Integer> dataAdapter = new ArrayAdapter<Integer>(this, android.R.layout.simple_spinner_item, list); 
    dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spinner.setAdapter(dataAdapter); 
    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
      System.out.println("Selected item :: "+list.get(position)); 
      System.out.println("Selected item Pos :: "+position); 
     } 

     @Override 
     public void onNothingSelected(AdapterView<?> parent) { 

     } 
    }); 
0

這將工作

int spinnerPosition = adapter.getPosition(yourStringValue); 
mSpinner.setSelection(spinnerPosition);