You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

登录后如何在界面显示用户名?accountinfo类代码返回null求助

问题分析与修复方案

嘿,咱们来捋捋你代码里的问题哈——你现在直接把TextView对象name拼到字符串里了,而不是获取它实际显示的文本内容,这就导致输出了Welcome null。另外你的变量命名有点绕,nameTV对应布局里的R.id.name,name对应R.id.email,很容易搞混,咱们一步步来修复:

核心问题&修复步骤

  • 错误点:你拼接的是TextView对象本身,不是它的文本内容,需要调用getText().toString()来取出控件里的文字
  • 优化点:给变量改个见名知意的名字,避免后续自己都搞混

修复后的完整代码

public class AccountInfo extends AppCompatActivity {
    // 调整变量名,让逻辑更清晰
    TextView welcomeDisplayTV;
    TextView userEmailTV;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_accountinfo);
        
        // 绑定布局里的控件
        welcomeDisplayTV = findViewById(R.id.name); // 用来显示欢迎语的控件
        userEmailTV = findViewById(R.id.email); // 存储用户名的邮箱控件
        
        // 获取邮箱控件里的用户名文本,拼接到欢迎语中
        String userName = userEmailTV.getText().toString();
        welcomeDisplayTV.setText("Welcome " + userName);
    }
}

额外小提醒

  • 要确保R.id.email这个TextView在登录后已经被正确设置了用户名内容哦,如果这个控件本身就没有文本,那还是会显示Welcome后面空着或者null~
  • Java类名建议首字母大写(比如AccountInfo而非accountinfo),这是通用的命名规范,后续维护代码会更顺手

内容的提问来源于stack exchange,提问作者XXXyoudontsayXXXX

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:30:35