码迷,mamicode.com
首页 > 其他好文 > 详细

(三)页面之间的参数传递

时间:2015-10-30 10:28:32      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:

一、页面跳转

1、没有返回值的

打开Aty1

//跳转Aty1
Intent i=new Intent(MainActivity.this,Aty1.class);
//打开
startActivity(i);

关闭Aty1

finish();

 

 

2、有返回值的

打开Aty1并传入字符串

private Button btnStartAty1;
    private TextView tvOut;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btnStartAty1=(Button)findViewById(R.id.btnStartAty1);
        tvOut=(TextView)findViewById(R.id.tvOut);
        btnStartAty1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent i=new Intent(MainActivity.this,Aty1.class);
                //传递字符串
                i.putExtra("txt", "adkj");
                //打开activity并可以接收返回的值
                startActivityForResult(i,0);
            }
        });
    }

    
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        //接收字符串
        String result=data.getStringExtra("result");

        tvOut.setText(result);
        super.onActivityResult(requestCode, resultCode, data);
    }

Aty1返回信息

private Button btnClose;
    private TextView tvOut;

    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.aty1);

        btnClose=(Button)findViewById(R.id.btnClose);
        btnClose.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent i=new Intent();
                i.putExtra("result","Hello MainActiviy");
                //发送返回值
                setResult(0,i);

                finish();
            }
        });

        tvOut=(TextView)findViewById(R.id.tvOut);
        tvOut.setText(getIntent().getStringExtra("txt"));

    }

 

 

二、参数传递

1、方法一

//跳转Aty1
Intent i=new Intent(MainActivity.this,Aty1.class);
//传递参数
i.putExtra("txt", "adkj");

//打开
startActivity(i);

接收参数

getIntent().getStringExtra("txt")

 

2、方法二

Intent i=new Intent(MainActivity.this,Aty1.class);

Bundle data=new Bundle();
data.putString("txt","Hello Aty1");
i.putExtras(data);

startActivity(i);

接收参数

Bundle data=getIntent().getExtras();
String txt=data.getString("txt");

 

(三)页面之间的参数传递

标签:

原文地址:http://www.cnblogs.com/shuaichao/p/4922510.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!