Activity 的启动与传值

xiaoxiao2021-03-01  18

Activity 的启动

 ①. 在Android应用里各组件之间通信使用Intent。一个Activity通过Intent来表达自己的“意图”。

 ②. 常用有两种方式:

- Intent intent = new Intent(MainActivity.this , NextActivity.class);

- Intent intent = new Intent();

- intent.setClass(MainActivity.this , NextActivity.class);

③.常用启动方式有两种:

- startActivity();

- startActivityForResult();//需要回传数据时使用

Activity之间跳转和交换数据:

①数据传到下一个页面

由MainActivity跳转到FirstActivity代码如下

Intent intent =new Intent(MainActivity.this,FirstActivity.class); //传字符串 intent.putExtra("value1","我是由MainActivity传过来的数据"); intent.putExtra("value2",100);//传整数 startActivity(intent); //HashMap<String,String> map=new HashMap<String,String>(); //map.put("aaa","我是aaa"); //map.put("dddd","我是ddd"); //Intent intent2 =new Intent(MainActivity.this,FirstActivity.class); //intent2.putExtra("map",map);//如果是javabean则bean需要序列化 //startActivity(intent2);

 

在FirstActivity中接收数据

String str= intent.getStringExtra("value1"); int intValue= intent.getIntExtra("value2",0);

 

②数据回传(SecondActivity回传数据到MainActivity)

MainActivity中跳转

Intent intent2 = new Intent(MainActivity.this, SecondActivity.class); startActivityForResult(intent2, 1111);

重写onActivityResut接收数据

if (requestCode == 1111) {//与跳转中requestCode 对应 if(resultCode==RESULT_OK) { String str= data.getStringExtra("str"); mTextView3.setText(str); } }

SecondActivity中设置数据

Intent intent=new Intent(); intent.putExtra("str","我是SecondActivity中回传的数据"); setResult(RESULT_OK,intent); finish();

 

资源下载

https://download.csdn.net/download/u010350891/10674585

转载请注明原文地址: https://www.6miu.com/read-3650207.html

最新回复(0)