2012-12-14 69 views
3

我創建一個微調顯示數字,但數量可能高達256,我不希望有在我的代碼中的所有條目1-256。該號碼將基於不同課程的輸入字段。微調基於輸入字段

即如果用戶輸入16,微調器會顯示數字1到16。

我完全新的紡紗因此可能有些請您談談在虛擬方面如果可能的話。

如果這是不可能的,請幫我用另一種解決方案。

非常感謝。

+0

紡紗通常採取適配器。適配器可以採用陣列。您可以動態創建一個包含所有值的數組。 (上i循環,阿雷[I] = i或東西)的 – njzk2

+0

可能重複的[機器人:創建編程方式從陣列噴絲](http://stackoverflow.com/questions/2784081/android-create-spinner-programmatically-from-陣列) – Abubakkar

+0

@Abu都能跟得上沒有重複,好地方呢。 –

回答

1

我假設你想辦法以編程方式添加Spinner到您的應用程序。

比方說你存儲在一個ArrayList

ArrayList<String> spinnerArray = new ArrayList<String>(); 

紗廠可以使用ArrayAdapters

Spinner spinner = new Spinner(this); 
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter (this,android.R.layout.simple_spinner_dropdown_item,spinnerArray); 
spinner.setAdapter(spinnerArrayAdapter); 

到目前爲止好,你已經有了一個動態的微調創造,但現在你需要數據的16個項目從中。這裏是你如何得到它:

spinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
     public void onNothingSelected(AdapterView<?> parent) {} 
     public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
      //Your logic for what happens when an Item is selected 
     } 
    });