在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

标签:安卓开发

你的评论