[英]Intent : To start an activity, unable to start the second activity
该应用程序旨在在第一个活动中编写一条消息,单击按钮后,该消息出现在第二个活动中。 但是在智能手机上安装应用程序后,当我单击按钮时,会出现一条消息说“应用程序已停止”。 请帮助我。“我使用 ECLIPSE 来开发此应用程序”
第一个活动代码:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void login (View view) {
EditText user = (EditText) findViewById(R.id.user);
EditText password = (EditText) findViewById(R.id.password);
Intent myintent= new Intent (getApplicationContext(),Main2Activity.class); //permet de basculer de cette interface à la 2éme aprés avoir éxécuter "startActivity(myintent)";
Bundle b=new Bundle();
b.putString("username", user.getText().toString());
b.putString("password", password.getText().toString());
myintent.putExtras(b);
startActivity(myintent);
}
第二个活动:
public class Main2Activity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
TextView mes=(TextView)findViewById(R.id.mes);
Bundle b=getIntent().getExtras();
string user=(string) b.get("username");
string pass=(string) b.get("password");
mes.setText("user:"+user +"password:"+pass);
}
尝试一种更简单的方法将数据作为字符串传递,而不使用 bundle。
主活动.java
Intent i= new Intent(MainActivity.this,Main2Activity .class);
i.putExtra("username",user.getText().toString());
i.putExtra("password",password.getText().toString());
startActivity(i);
并在Main2Activity .java
String name=getIntent().getExtras().getString("username");
txtView.setText(name);
String pass=getIntent().getExtras().getString("password");
txtView2.setText(pass);
改变这一行
Intent myintent= new Intent (getApplicationContext(), Main2Activity.class)
到
Intent myintent= new Intent (this, Main2Activity.class)
看看它是否解决了问题:)
关于你的第二个活动(Main2Activity)文件:
Bundle b=getIntent().getExtras();
后的行Bundle b=getIntent().getExtras();
你写的是(string)
而不是(String)
。 所以请改变它...如果你写错了。
@AugustoCarmo 的回答也是正确的。
也试试。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.