在 Android 中从 Firebase 加载数据后添加视图

时间:2021-08-01 17:51:03

标签: android android-layout

我有以下代码(标准):

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(new UsersListingLayout(this));


    userStatusQuery.addListenerForSingleValueEvent(new ValueEventListener() {

        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {

            if (dataSnapshot.exists()) {

                ... load data to display in UsersListingLayout

            } else { 

            }

        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }

    });

}

这是在加载数据之前调用视图。我如何确保该功能:

setContentView(new UsersListingLayout(this));

在查找发生后被调用?

更新:

所以要为我的问题/问题添加更多细节。我有以下活动。

public class UserListingActivity extends Activity {

    List<Users> userList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(new UsersListingLayout(this, userList)); <-- This is calling the Layout, but as you can see its before the Firebase Lookup which is below this...


        userStatusQuery.addListenerForSingleValueEvent(new ValueEventListener() {

            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {

                if (dataSnapshot.exists()) {

                    ... load data to display in UsersListingLayout

                }

            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }

        });

    }

}

UsersListingLayout 详细说明了将显示用户详细信息的表格布局。

public class UsersListingLayout extends RelativeLayout {


}

我的问题是我知道我需要在检索列表并将其添加到 userList 后调用 setContentView(new UsersListingLayout(this, userList)); 函数,但是如果我将该函数移动到 onDataChange 函数中,则会收到一条错误消息:

Required type: Context

Provided: ValueEventListener

我知道我是 Android 新手,但这可能是因为我将函数移到 onDataChange 函数的 ValueEventListener 中。

我不知道如何解决这个问题?

0 个答案:

没有答案