2016-02-05 91 views
-2

我对java/android编程颇为陌生,并且大部分都是关注教程/阅读。我有两个名为MainActivity和Homeactivity的类,MainActivity是用户登录的位置,HomePageactivity是通过intent打开的,如果登录是正确的话。从Java类中检索字符串

的用户名通过编辑文本传递给我的主类

String CurrentUser = editTextusername.getText().toString(); 
public String GetCurrentUser() 
{ 
    return CurrentUser; 
} 

已经使用下面的代码而这在网页类

MainActivity testing = new MainActivity(); 
String x = testing.GetCurrentUser(); 
CurrentUserName.setText(x); 

这似乎是它应该工作对我来说,如何启动我的应用程序时,它只是崩溃,并没有在主要活动中的代码行,它工作正常

任何想法,即时通讯做的事情g here guys

+0

** MainActivity测试=新MainActivity(); **这是不应该怎么安卓工作... –

+0

我觉得你的问题是editTextusername没有文字当你将姜黄素rentUser和toString对null抛出空指针 –

+0

您是否阅读过日志消息? – Riaz

回答

0

您可以使用意向将信息从一个Activity传送到另一个。 阅读:Intents

使用putExtra()通过意图传输字符串和原始数据类型相当容易。 一些示例代码,以使其更清晰:

//this runs, for example, after a button click 
Intent intent = new Intent(this,SecondActivity.class); 
intent.putExtra("username", userName); 
startActivity(intent); 

在另一端,你可以把它们看成是这样的:

String username = getIntent().getStringExtra("username"); 
0

该字符串为null设置时设定的TextView之前的TextView检查

String CurrentUser = editTextusername.getText().toString(); 
          public String GetCurrentUser() 
          { 
           if(currentUser.length>0&&currentUser!="")  
           return CurrentUser; 
           else return "empty"; 
          } 
String x = testing.GetCurrentUser(); 

     CurrentUserName.setText(""+x);