我在Firebase上有一個數據庫,並試圖讓android將它打印到ListView中。我可以讓ListView打印一些東西,但它好像是某些ID的值,而不是實際的值。關鍵是能夠建立一個搜索欄,它可以在數據庫中找到任何數據。 我在addValueEventListener中註釋了一些註釋。這段代碼應該可以工作,但是當我使用它時,當我進入「ExistingCustomerActivity」活動時,我的應用程序崩潰而沒有錯誤。 My database structure and the output from the app, with the current code.請注意ListView當前正在打印「買家」下的值。 有沒有人可以幫助解決這個問題?提前致謝。 更新:我可以看到數據在日誌中正確加載,但它仍然顯示我假設的某種ID。當addValueEventListener調用時,Firebase返回錯誤的值
public class ExistingCustomerActivity extends AppCompatActivity {
private DatabaseReference mDatabaseReference;
private ListView mUserList;
private ArrayList<Buyers> mUsernames = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_existing_customer);
mDatabaseReference = FirebaseDatabase.getInstance().getReference("Buyers");
mUserList = (ListView) findViewById(R.id.UserListView);
final ArrayAdapter<Buyers> arrayAdapter = new ArrayAdapter<Buyers>(this, android.R.layout.simple_list_item_1, mUsernames);
mUserList.setAdapter(arrayAdapter);
mDatabaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//Buyers buyerList = new Buyers(childSnapshot);
for (DataSnapshot childSnapshot : dataSnapshot.getChildren()) {
Map<String, String> map = (Map<String, String>) childSnapshot.getValue();
Log.v("YourValue,","Map value is:" +map.toString());
Buyers buyerList = new Buyers(map);
mUsernames.add(buyerList);
}
arrayAdapter.notifyDataSetChanged();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
}
買家類:
public class Buyers {
private String car_Value;
private String interest;
private String driverLicenseNr;
private String name;
private String personNr;
private String phone_Number;
public Buyers(Map<String,String> map){
car_Value = map.get("Bil");
interest = map.get("Interresse");
driverLicenseNr = map.get("Kørekortnr");
name = map.get("Navn");
personNr = map.get("Personnr");
phone_Number = map.get("Telefonnr");
}
有你的火力DB結構內部沒有'PersonNumberTextField' – akhilesh0707
用實際的變量名稱,比如'比爾,Intereresse和你的'公共採購中others'()'構造 – akhilesh0707
的「PersonNumberTextField」是從另一個活動,我將數據插入數據庫。 – Michael