내 앱은 사용자 정의 FirebaseListAdapter를 사용합니다. AreaGridAdap.java를 만들었습니다.
public class AreaGridAdap {
String gridArea;
public AreaGridAdap(){
}
public AreaGridAdap(String gridArea) {
this.gridArea = gridArea;
}
public String getGridArea() {
return gridArea;
}
}
이것은 내 firebaseListAdapter입니다.
final FirebaseListAdapter<AreaGridAdap> firebaseListAdapter = new FirebaseListAdapter<AreaGridAdap> (AreaGridActivity.this,
AreaGridAdap.class,
R.layout.area_grid,
databaseReference) {
@Override
protected void populateView(View v, AreaGridAdap model, int position) {
areaTextView = (TextView) v.findViewById(R.id.areaGridText);
areaTextView.setText(model.getGridArea());
}
};
처음으로 기본값을 사용 FirebaseListAdapter
했으며 제대로 작동했습니다. 그러나 custom을 사용할 때 FirebaseListAdapter
내 앱이 충돌하고 오류 메시지로 다음이 표시됩니다.
com.google.firebase.database.DatabaseException : java.lang.String 유형의 개체를 trickandroid.fulllogin.AreaGridAdap 유형으로 변환 할 수 없습니다.
이 오류를 해결하도록 도와주세요.
이 오류 메시지는 아래의 데이터 구조 databaseReference
가 코드와 일치하지 않음을 의미합니다 . 다음과 같은 데이터 구조가있는 것 같습니다.
-K....1: "First value"
-K....2: "Second value"
-K....3: "Third value"
코드가이 구조를 처리하도록 만들어지는 동안 :
-K....1: {
gridArea: "First value"
}
-K....2: {
gridArea: "Second value"
}
-K....3: {
gridArea: "Third value"
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다