android– 无法从ondatachange方法中获取值

android– 无法从ondatachange方法中获取值,第1张

概述我正在开发一个Android应用程序,其中我使用firebase作为数据库,但是当在onDataChange方法获取变量并将它们分配给全局变量时,我得到了空变量,但是当我在onDataChange方法中调用这些变量时,它们是不是空的.publicclassPositionateMarkerTaskextendsAsyncTask{publicA

我正在开发一个Android应用程序,其中我使用firebase作为数据库,但是当在onDataChange方法中获取变量并将它们分配给全局变量时,我得到了空变量,但是当我在onDataChange方法中调用这些变量时,它们是不是空的.

public class positionateMarkerTask extends AsyncTask {    public ArrayList<Location> arrayList= new ArrayList<>();    public voID connect() {        //setting connexion parameter        final Firebase ref = new Firebase("https://test.firebaseio.com/test");        query query = ref.orderByChild("longitude");        //get the data from the DB        query.addListenerForSingleValueEvent(new ValueEventListener() {            @OverrIDe            public voID onDataChange(DataSnapshot dataSnapshot) {                //checking if the user exist                if(dataSnapshot.exists()){                    for (DataSnapshot usersnapshot : dataSnapshot.getChildren()) {                        //get each user which has the target username                        Location location =usersnapshot.getValue(Location.class);                            arrayList.add(location);                        //if the password is true , the data will be storaged in the sharedPreferences file and a Home activity will be launched                    }                }                else{                    System.out.println("not found");                }            }            @OverrIDe            public voID onCancelled(FirebaseError firebaseError) {                  System.out.println("problem ");            }        });    }    @OverrIDe    protected Object doInBackground(Object[] params) {        connect();        return null;    }    @OverrIDe    protected voID onPostExecute(Object o) {        super.onPostExecute(o);        System.out.println("the firs long is"+arrayList.get(0).getLongitude());    }}

解决方法:

欢迎使用异步编程,这会扰乱你一直认为是真实的一切. 总结

以上是内存溢出为你收集整理的android – 无法从ondatachange方法中获取值全部内容,希望文章能够帮你解决android – 无法从ondatachange方法中获取值所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1115772.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存