zoukankan      html  css  js  c++  java
  • 在Activity之间传递数据—简单数据/Bundle

     1.首先要知道怎么通过一个Activity 打开另一个Activity。主页面为MainActivity,另一个页面为OtherActivity。MainActivity中的按钮Id为btnStart。

    此实例类似与在winform中,通过单击一个按钮,打开另一个form。

    在MainActivity的OnCreate方法中填写一下代码:

    findViewById(R.id.btnStart).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent i=new Intent(MainActivity.this,OthereActivity.class);
            startActivity(i);
        }
    });

    2.传递简单数据到OtherActivity。

    在OtherActivity中添加一个文本显示控件TextView,用于显示从MainActivity中传递的数据。本例传递一个string串。

    MainActivity的OnCreate方法代码:

     findViewById(R.id.btnStart).setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Intent i=new Intent(MainActivity.this,OthereActivity.class);
                    i.putExtra("key","value:yangjian");
                    startActivity(i);
                }
            });

    OtherActivity的OnCreate中接收,显示代码:

           tv=(TextView)findViewById(R.id.txtView);
            Intent i=getIntent();
           tv.setText(i.getStringExtra("key"));

    3.传递数据包bundle到OtherActivity。

    MainActivity的OnCreate方法代码:

     findViewById(R.id.btnStart).setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Intent i=new Intent(MainActivity.this,OthereActivity.class);
    
                    Bundle b=new Bundle();
                    b.putString("name","杨戬");
                    b.putInt("age",90);
                    i.putExtras(b);
                  //  i.putExtra("data",b);  这一行或上一行都可以
                    startActivity(i);
                }
            });

    OtherActivity的OnCreate中接收,显示代码:

     tv=(TextView)findViewById(R.id.txtView);
            Intent i=getIntent();
            Bundle data=i.getExtras();
    
            tv.setText(String.format("名字:%s;年龄:%d",data.getString("name"),data.getInt("age")));
  • 相关阅读:
    C# MenuStrip Visible=false bug的解决方案
    WTL 命令行编译
    LCS 最长公共字串算法实现
    调用系统打开文件OpenAs_RunDLL
    ToolStripSplitButton Checked 效果
    WTL 中使用GDI+ 备忘
    P7482 不条理狂诗曲 题解
    CF1557 比赛记录
    P2519 [HAOI2011]problem a 题解
    CF1540B Tree Array 题解
  • 原文地址:https://www.cnblogs.com/hometown/p/4575169.html
Copyright © 2011-2022 走看看