Digvijay :
나는 중포 기지에서 도시의 목록을 얻으려고 노력하고 회 전자에 표시하고 있습니다. 하지만 아래의 오류를 다음 얻고있다 :
com.google.firebase.database.DatabaseException는 : Models.FirebaseCityModel를 입력 java.lang.String 타입의 객체를 변환 할 수 없습니다
데이터베이스 구조 :
다음은 내 코드입니다 :
dRef.child("Cities").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
List<FirebaseCityModel> cities = new ArrayList<>();
for(DataSnapshot areaSnapshot:dataSnapshot.getChildren()){
FirebaseCityModel areaName = areaSnapshot.getValue(FirebaseCityModel.class);
cities.add(areaName);
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this,R.layout.spinner_city,
R.id.locaions,list);
chooseLocation.setAdapter(adapter);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
TastyToast.makeText(getApplicationContext(),"Unable to fetch locations",TastyToast.LENGTH_SHORT,TastyToast.ERROR).show();
}
});
누군가가 나를 내가 잘못을하고있는 중이 야 무엇을 알려 주시기 바랍니다. 어떤 도움을 주시면 감사하겠습니다.
감사
알렉스 마모 :
대부분의 경우 코드의 문제는 추가하고있다 즉 .child()
전화를. 이 문제를 해결하기 위해 그래서, 다음 코드 줄을 변경하십시오 :
FirebaseCityModel areaName = areaSnapshot.child("city").getValue(FirebaseCityModel.class);
에
FirebaseCityModel areaName = areaSnapshot.getValue(FirebaseCityModel.class);