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