1
我的數據來自Firebase數據庫。我成功將busNum
填入spinner
。但是我的問題是每當我選擇busnum
時,我的spinner
什麼也沒有顯示。這裏是一些代碼。 List<String> busnum = new ArrayList<String>();
微調控件上的選定項目將不起作用(ANDROID)
busRef = new Firebase(Config.FIREBASE_URL_BUSNUMBER);
busRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
busnum.add(postSnapshot.child("busNum").getValue().toString());
}
}
@Override
public void onCancelled(FirebaseError firebaseError) {
Toast.makeText(AddDriverActivity.this, "Failed to read data.... " +firebaseError.getMessage(), Toast.LENGTH_SHORT).show();
}
});
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, busnum);
mSpinBusNum.setPrompt("Select bus number");
mSpinBusNum.setAdapter(adapter);
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
busNum = parent.getItemAtPosition(position).toString();
}
busRef.addListenerForSingleValueEvent(新ValueEventListener(){ @覆蓋 公共無效onDataChange(DataSnapshot dataSnapshot){ 爲(DataSnapshot postSnapshot:dataSnapshot.getChildren()){ busnum.add(postSnapshot.child(「busNum」)。getValue()。toString()); } //在此處添加套件適配器 } –
非常感謝你!有效!但是我在'onDataChange'的'for loop'後面設置了適配器。 反正,謝謝! – tin
**也謝謝** –