页面跳转的两种方式:
第一个直接跳转,不带任何参数
第二个是,带参数的页面跳转,需要从第二个页面回传数据回第一个页面
这里,创建了两个按钮,一个是用来实现不带参数的方法,另一个是用来实现带数据回传的方法
xml页面就是两个简单的页面,这里就不介绍了
需要值得注意的是:创建两个Activaty时,记得要注册这两个Activaty
第一个页面的代码
public class FActivaty extends Activity {
// 实例控件
private Button btn1;
private Button btn2;
private TextView tView;
private Context context = this;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.factivaty);
// 初始化控件
btn1 = (Button) findViewById(R.id.btn1);
btn2 = (Button) findViewById(R.id.btn2);
tView = (TextView) findViewById(R.id.textView1);
/*
* 第一种页面跳转方式:不带数据
* 第一步:实例一个Intent
* 第二步:调用startActivaty
*/
// btn1添加点击事件监听
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(context, SActivaty.class);
startActivity(intent);
}
});
/*
* 第二种页面跳转方式:带回传数据
* 第一步:实例一个Intent
* 第二步:调用startActivityForResult
*/
// btn2添加点击事件监听
btn2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
/*
* startActivityForResult
* 第一个参数是Intent类型
* 第二个参数是请求的一个标识
*/
Intent intent = new Intent(context, SActivaty.class);
startActivityForResult(intent, 1);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==1&&resultCode==2) {
String textString=data.getStringExtra("String");
tView.setText(textString);
}
}
}
第二个页面的代码:
public class SActivaty extends Activity {
// 实例控件
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.sactivaty);
// 初始化控件
btn = (Button) findViewById(R.id.button1);
// btn添加点击事件监听
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
/*
* 回传一个Intent类型的数据
* 2代表的是某个页面的回传标识
*/
Intent data = new Intent();
data.putExtra("String", "回传的数据");
setResult(2, data);
finish();
}
});
}
}