1.这部分是显示跳转到另一个Activity,这个被跳转的Activ叫做SecondActivity
写法一:
Intent intent = new Intent(this,SecondActivity.class); intent.putExtra("account",accountText); intent.putExtra("password",passwordText); startActivity(intent);
写法二:
ComponentName componentName = new ComponentName("this","SecondActivity.class"); intent.setComponent(componentName); startActivity(intent);
它其实也就是:
Intent intent = new Intent(); String packageName = this.getPackageName(); String name = SecondActivity.class.getName(); intent.setClassName(packageName,name); intent.putExtra("account",accountText); intent.putExtra("password",passwordText); startActivity(intent);
2.这部分是隐式跳转到另一个Activity
Intent intent = new Intent(); intent.setAction("com.example.LOGIN_INFO"); intent.addCategory("android.intent.category.DEFAULT"); intent.putExtra("account",accountText); intent.putExtra("password",passwordText); startActivity(intent);
接受类SecondActivity代码:
Intent intent=getIntent(); String account = intent.getStringExtra("account"); String password = intent.getStringExtra("password"); TextView info = findViewById(R.id.info); info.setText("your name is "+account+",your password is "+password+"");
3.接收端返回结果
发送代码:,模拟话费充值,从MainActivity充值到PayActivity
private static final int PAY_REQUEST_CODE=1;
//按mInoput充值按钮
private void initListener() {
mInput.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,PayActivity.class);
startActivityForResult(intent,PAY_REQUEST_CODE);
}
});
}
接收代码:PayActivity
mInput.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent();
intent.putExtra("resultContent","充值取消");
setResult(3,intent);
}
});
mInput.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent();
intent.putExtra("resultContent","充值成功");
setResult(2,intent);
}
});
返回结果代码:使用onActivityResult方法接受返回结果信息
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); if(requestCode==PAY_REQUEST_CODE){ String resultContent = null; if(resultCode==2){ resultContent=data.getStringExtra("resultContent"); }else if(resultCode==3){ resultContent=data.getStringExtra("resultcontent"); } mPayResultText.setText(resultContent);//给TextView控件设置充值结果信息 } }
原文:https://www.cnblogs.com/wcyMiracle/p/13379182.html