当前位置:  开发笔记 > 编程语言 > 正文

如何再次从firebase数据库中获取数据?

如何解决《如何再次从firebase数据库中获取数据?》经验,为你挑选了1个好方法。

我正在使用具有" 刷卡到刷新"布局的应用程序.

在"滑动到刷新"布局中向上滚动时,数据将从Internet刷新.(对于那些不知道的人)

我的数据源是Firebase.

在我的应用程序中,如果用户未连接,则显示网络错误消息,然后在打开互联网后,它不会获取数据.

你如何从我的数据库中再次获取数据.

这是代码:

protected void onCreate(Bundle savedInstanceState) {

    ...

    mFirebaseDatabase = FirebaseDatabase.getInstance();
    // my database

    mNewsDatabaseReference = LoginActivity.mFirebaseDatabase.getReference()
    .child("data").child("news");
    // my database reference

    // my ChildEventListener
    mNewsChildEventListener = new ChildEventListener() {
        @Override
        public void onChildAdded(DataSnapshot dataSnapshot, String s) {

            // my data
            News news = dataSnapshot.getValue(News.class);

            // add the news to the top of my ArrayAdapter
            myAdapter.insert(news, 0);
        }
        @Override
        public void onChildChanged(DataSnapshot dataSnapshot, String s) {}
        @Override
        public void onChildRemoved(DataSnapshot dataSnapshot) {}
        @Override
        public void onChildMoved(DataSnapshot dataSnapshot, String s) {}
        @Override
        public void onCancelled(DatabaseError databaseError) {}
    };

    // my OnRefreshListener
    mySwipeRefreshLayout.setOnRefreshListener(
            new SwipeRefreshLayout.OnRefreshListener() {
                @Override
                public void onRefresh() {

                    // what Should I do in here to request the data again?!

                    // I know that I should empty my adapter first then request the data
                    myAdapter.clear();

                }
            }
    );
}

Wilder Perei.. 5

使用firebase实时数据库时,无需再次执行请求.一旦数据发生变化,它将自动为您获取数据,并且将调用其中一个侦听器.

每次news修改子节点时都会触发onChildChanged()事件,包括对子节点后代的任何修改.

要启用脱机功能,请不要忘记使用 setPersistenceEnabled(true)

查看文档以获取更多信息



1> Wilder Perei..:

使用firebase实时数据库时,无需再次执行请求.一旦数据发生变化,它将自动为您获取数据,并且将调用其中一个侦听器.

每次news修改子节点时都会触发onChildChanged()事件,包括对子节点后代的任何修改.

要启用脱机功能,请不要忘记使用 setPersistenceEnabled(true)

查看文档以获取更多信息

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有