如果需要打开某一个界面后在跳转回来,如在登录界面点击注册,注册完成后再跳转回登录界面,此时可以使用
bt_regis = (Button) findViewById(R.id.regis); //注册按钮
bt_regis.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
Intent intent = new Intent(Login.this, Regis.class); //转到注册的类
startActivityForResult(intent,0);
}
});
public class Regis extends Activity {
private Button bt_regis;
String name,password;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.regis_ui);
bt_regis = (Button) findViewById(R.id.regis);
bt_regis.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
EditText tv = (EditText) findViewById(R.id.na);
name = tv.getText().toString();
EditText mm = (EditText) findViewById(R.id.pd);
password = mm.getText().toString();
Toast.makeText(Regis.this, "注册成功!\n三秒后跳转至登页面",
Toast.LENGTH_LONG).show();
Intent intent = new Intent(Regis.this,Login.class);
//可以不指定跳转的类,直接将自己关闭,因为此处注册可能是从主页来的,故指定了跳转。
intent.putExtra("name", name);
intent.putExtra("password", password);
Regis.this.setResult(0,intent);
finish();
}
});
}
不需要跳转回原来的时,可以使用
Bundle intent = getIntent().getExtras(); intent.getString("name");
注意:
只有在自动跳转回来的这种函数中才可以使用onActivityResult(),否则貌似不会生效。
以上内容只是小白的猜测,肯定有错误,仅供参考。