Android学习之Intent页面跳转的两种方式

页面跳转的两种方式:
第一个直接跳转,不带任何参数

第二个是,带参数的页面跳转,需要从第二个页面回传数据回第一个页面

这里,创建了两个按钮,一个是用来实现不带参数的方法,另一个是用来实现带数据回传的方法

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();


}

});

}


}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值