自定义 FirebaseListAdapter 中出现错误"Can't convert object of type"



我的应用使用自定义 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并且工作正常。但是当我使用自定义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"
}

相关内容

  • 没有找到相关文章

最新更新