1
在我的Android應用程序,我hava佈局與Spinners。我想要做的是從第一個微調器中選擇一個項目,填寫第二個項目。從數據庫光標填充時獲取一個微調器的項目選擇
第一微調從(數據庫查詢的結果)光標充滿了這樣的:
Spinner combo1 = (Spinner) findViewById(R.id.combo1);
mDbH.open();
Cursor c1 = null;
c1 = mDbH.consulta4();
startManagingCursor(c1);
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,android.R.layout.simple_spinner_item,c1,new String[] {"nombre"},new int[] {android.R.id.text1});
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
combo1.setAdapter(adapter);
這工作得很好!這個問題是我的事件監聽器裏:
combo1.setOnItemSelectedListener(new OnItemSelectedListener(){
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
String est = String.valueOf(combo1.getSelectedItem());
int idEst = (int) id;
Log.e("est",est);
Log.e("idEst",""+idEst);
mDbH.open();
Cursor c = null;
c = mDbH.consulta5(idEst,est);
SimpleCursorAdapter adapter2 = new SimpleCursorAdapter(getApplicationContext(),android.R.layout.simple_spinner_item,c,new String[] {"nombre"},new int[] {android.R.id.text1});
adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
combo1.setAdapter(adapter2);
}
public void onNothingSelected(AdapterView<?> arg0) {}
});
因爲,在logcat的行Log.e( 「EST」,EST);這表明:
10-25 09:48:50.390: E/est(3462): [email protected]
和當然,這個值是不是在我的數據庫和第二光標是空的,且旋轉不與任何東西填滿!所以,這是我的問題,當從數據庫填充時,如何從Spinner中選擇項目?我也試過了:
String est = combo1.getSelectedItem().toString();
和
String est = parentView.getItemAtPosition(position).toString();
,但結果是一樣的!難道我做錯了什麼?請幫忙!
謝謝!
好吧!謝謝!!這完美的作品! –
順便說一句,我沒有意識到,但我的代碼中有一個錯誤,在行combo1.setAdapter(adapter2);;不是組合1,但組合2 ... –