传递数据包Bundle
在在Activity之间传递参数基础上
在MainActivity.java中
findViewById(R.id.btnStartAty).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i=new Intent(MainActivity.this,TheAty.class);
i.putExtra("data","你好,这是activity之间参数的传递");
startActivity(i);
}
});
改为
Bundle b=new Bundle();
b.putString("name","这是Bunle传递数据包");
b.putInt("age",2);
b.putString("name1","这是存在的name1");//没有时就显示默认值
// i.putExtras(b);
i.putExtra("data",b);
startActivity(i);
i.putExtras(b);为把b传进来
在TheAty.java中获取来自MainActivity.java中的bundle:
Intent i= getIntent();
// Bundle data=i.getExtras();
Bundle data=i.getBundleExtra("data");
tv= (TextView) findViewById(R.id.tv);
// tv.setText(i.getStringExtra("data"));
tv.setText(String.format("name=%s,age=%d,name1=%s",data.getString("name"),data.getInt("age"),data.getString("name1", "这是name1不存在时的默认值")));
name1为不存在的
data.getString("name1", "这是name1不存在时的默认值")//String key,String defaultvalue
标签:安卓开发