在两个Activity之间传递数据,最终都是通过Intent传递,但设置数据和保存数据方式有两种(使用Intent 和 Bundle),分别对应如下:
设置数据(MainActivity.java)
方法一:1.直接用intent.putExtra(“name”,“张三”)
Intent intent = new Intent(MainActivity.this,OtherActivity.class);
intent.putExtra("name", "张三");
方法二:2.用bundle.putString(“name”,“张三”) ;
Intent intent = new Intent(MainActivity.this,OtherActivity.class);
Bundle bundle = new Bundle();
bundle.putString("name", "张三");
bundle.putInt("age", 25);
bundle.putString("address", "China");
intent.putExtras(bundle); //将bundle传入intent中。
读取数据 (OtherActivty.java)
方法一:直接用Intent , String nameString = intent.getStringExtra(“name”);
Intent intent = getIntent();
String nameString = intent.getStringExtra("name");
方法二:用bundle , String nameString = bundle.getString(“name”);
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
String nameString = bundle.getString("name");
int age = bundle.getInt("age");
String addressString = bundle.getString("address");