当我运行该应用程序并转到用户活动时,该应用程序崩溃,向我显示mUsersList.setHasFixedSize(true);正在使应用程序崩溃。
这是消息“由:java.lang.NullPointerException引起:尝试在空对象引用上调用虚拟方法'void androidx.recyclerview.widget.RecyclerView.setHasFixedSize(boolean)'”
private RecyclerView mUsersList;
private DatabaseReference mUsersDatabase;
@Override
protected void onCreate( Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.users_single_layout);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
mUsersDatabase = FirebaseDatabase.getInstance().getReference().child("Users");
mUsersList = findViewById(R.id.users_list);
mUsersList.setHasFixedSize(true);
mUsersList.setLayoutManager(new LinearLayoutManager(this));
}
答案 0 :(得分:1)
stacktrace告诉您所需的一切。 mUsersList为null,因此您无法在其上调用任何方法。您应该确保布局文件R.layout.users_single_layout
中定义了ID为“ @ + id / users_list”的RecyclerView。另外,您应该执行空指针检查:
mUsersList = findViewById(R.id.users_list);
if (mUsersList != null) {
mUsersList.setHasFixedSize(true);
mUsersList.setLayoutManager(new LinearLayoutManager(this));
}