尝试在空对象引用上调用虚方法 - 如何正确更改TextView的值

问题描述 投票:-1回答:2

我知道我的问题究竟在哪里,我只是不知道如何解决它。我正在尝试更改TextView的值,并且使用我的代码,应用程序崩溃,我在标题中收到错误。

我的代码:

@Override
protected void onStart() {
    super.onStart();

    if(authenticate() == true) {
        displayUserDetails();
    } else {
        startActivity(new Intent(MainActivity.this, Login.class));
    }
}

private boolean authenticate() {
    return userLocalStore.getUserStatus();
}

private void displayUserDetails() {
    User user = userLocalStore.getLoggedInUser();

    final TextView userName = (TextView) findViewById(R.id.userName);
    userName.setText(user.name);
    final TextView userEmail = (TextView) findViewById(R.id.userEmail);
    userEmail.setText(user.email);
}

你有我的代码片段,如果你需要全班,我很乐意提供。先感谢您。

更新:

问题是内容视图,因为它被设置为activity_main,因为我无法切换到另一个,我只是这样做:

private void displayUserDetails() {
    User user = userLocalStore.getLoggedInUser();

    NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
    navigationView.setNavigationItemSelectedListener(this);
    View header=navigationView.getHeaderView(0);

    final TextView userName = (TextView) header.findViewById(R.id.userName);
    userName.setText(user.name);
    final TextView userEmail = (TextView) header.findViewById(R.id.userEmail);
    userEmail.setText(user.email);
}
java android nullpointerexception textview
2个回答
© www.soinside.com 2019 - 2024. All rights reserved.