【问题标题】:Firebase query result in ListView UI and RecyclerView UIListView UI 和 RecyclerView UI 中的 Firebase 查询结果
【发布时间】:2016-05-26 01:22:24
【问题描述】:

我正在尝试创建一个 Firebase 数据库来存储员工信息,然后在查询地址时,所有留在该特定区域的员工都应该显示在 ListView 或 RecyclerView 中,但是,我遇到了以下问题:

我无法填充 ListView。

    ArrayList<String> mItems = new ArrayList<>();
    ArrayAdapter mAdapter;
    ListView mRecyclerView;

    FirebaseListAdapter<String> fireAdapter = new FirebaseListAdapter<String>() {
            @Override
            protected void populateView(View view, String s) {
             //populate view
            }
        };

在上面的代码中,我无法将构造函数写成这样,

    FirebaseListAdapter<String> fireAdapter = new FirebaseListAdapter<String>(this,String.class,
                android.R.layout.simple_list_item_1,mEmployRef) {
            @Override
            protected void populateView(View view, String s) {
                //populate view
            }
        }; 

当我用构造函数编写上面的代码时,它说,

无法解析构造函数“FirebaseListAdapter(anonymous android.view.View.OnClickListener, java.lang.Class, int, com.google.firebase.database.DatabaseReference)”

我该如何解决这个问题?当我尝试使用 RecyclerView 时,也会出现类似的问题。

【问题讨论】:

  • @puf,先生,你能帮忙吗?我实际上关注了 Firecast 视频。

标签: android listview firebase firebase-realtime-database firebaseui


【解决方案1】:

您正在OnClickListener() 内创建适配器,这意味着this 指向该侦听器。您需要将Activity 传递给FirebaseListAdapter,您可以通过MainActivity.this 获得。

【讨论】:

  • 仍然给我同样的错误,先生,FirebaseListAdapter fireAdapter = new FirebaseListAdapter(Search.this,String.class,...)。执行上述操作仍然给我同样的错误,请帮助。确实这是在 OnClickListener() 内部,但传递 Search.this 给了我同样的错误。
  • @puf,切换到 listView 并且它可以工作,但不是实时的。但它适用于这个应用程序。
【解决方案2】:

Firebase 升级时我遇到了这个问题,我为摆脱构造函数错误所做的就是改变这个:

Firebase rootRef = new Firebase("https://<your-app>.firebaseio.com/");

到这里:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();

然后使用 rootRef 作为构造函数的第四个参数。

这里是从以前的 firebase 升级到当前的链接: https://firebase.google.com/support/guides/firebase-android#import_your_project_to_the_new_firebase_console_numbered

另外,升级您的 sdk。希望这能解决你的问题

【讨论】:

    猜你喜欢
    • 2016-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多