两个Activity之间Intent传递数据

来源:互联网 发布:手机语音朗读软件 编辑:程序博客网 时间:2024/05/18 00:51

具体实现的方法是Intent.putExtra()(这种方法比较直接),将参数传入(传入的参数数据类型可以很多种),也可以用Bundle传入参数,
Bundle bundle = new Bundle();
bundle.putString(“str”, “Intent Demo”);
intent.putExtras(bundle);

若需要获得返回值,则用startActivityForResult(),并需要知道返回的一个RESULT_CODE(int类型),可以理解为指针,用intent.setClass() 确定传递给那个类(这里包括Activity、Service等)。第二个Activity—本例中的OtherActivity ,用Intent intent=getIntent();String nameString = intent.getStringExtra(“name”);使用Bundle的话Bundle bundle=intent.getExtras();String str=bundle.getString(“str”);获得前一个Activity传来的参数,然后把传递过来的数据展示出来,(MainActivity不用返回值可以直接startActivity(intent);)。

贴上主要代码:(仅展示直接方法)

MainActivity:

            @Override            public void onClick(View v) {                Intent intent = new Intent(MainActivity.this, OtherActivity.class);                intent.putExtra("name", "张三");                intent.putExtra("age","23");                startActivity(intent);            }        });

OtherActivity:

Intent intent = getIntent();        String nameString = intent.getStringExtra("name");        int age = intent.getIntExtra("age", 0);        textView.setText("age--->>"+age+"\n"+"name--->>"+nameString+"\n");
0 0
原创粉丝点击