zoukankan      html  css  js  c++  java
  • Android-Activity使用(2) -传值

    一、简单传值

    1、修改MainActivity

        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            //强制转换为Button,必然放在setContentView之后
            btnSatrtAty1=(Button)findViewById(R.id.btnStartAty1);
            //给按钮设定事件监听器
            btnSatrtAty1.setOnClickListener(
                //实现OnClickListener接口的了匿名类
                new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        //事件中启动Aty1
                        //参数一:MainActivity 的实例
                        //参数二:要启动的Activity的类的定义为Class类型
                        //this 指实现OnClickListener的内部类
                        Intent i=new Intent(MainActivity.this,Aty1.class);
                        i.putExtra("txt","Hello Aty1");
    
                        startActivity(i);
                    }
            });
            System.out.print("onCreate");
        }

    2、修改Aty1接受数据并显示

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

    二、Bundle传值复杂一点数据

    1、修改MainActivity通过Bundle传值

    Intent i=new Intent(MainActivity.this,Aty1.class);
    Bundle data=new Bundle();
    data.putString("","Hello Aty1");
    i.putExtras(data);
    
    startActivity(i);

    2、修改Aty1接受数据并显示

    tvOut=(TextView)findViewById(R.id.tvOut);
    Bundle data=getIntent().getExtras();
    String txt=data.getString("txt");
    tvOut.setText(txt);

    二、取Activity传回的传

    不可以使用startActivity改用startActivityForResult

    1、修改Aty1在页面关闭时设置返回值

            btnClose=(Button)findViewById(R.id.btnStartAty1);
            btnClose.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Intent i=new Intent();
                    i.putExtra("result","Hello MainActivity");
                    setResult(0, i);
                    finish();
                }
            });

    2、修改MainActivity接受回传值

        protected void onActivityResult(int requestCode, int resultCode, Intent data) {
            String result=data.getStringExtra("result");
            tvOut.setText(result);
            super.onActivityResult(requestCode, resultCode, data);
        }
  • 相关阅读:
    CSS布局之盒子模型[二]
    CSS布局之盒子模型[一]
    CSS文本相关之垂直排列[5]
    网站迁移之后,中文路径都变成乱码
    Linux中shell搜索多文件中的字符串
    mysql数据库报错
    使用Flarum轻松搭建自己的论坛
    CSS雪碧图-html优化
    CSS-定位模式
    ul当做div标签的使用
  • 原文地址:https://www.cnblogs.com/huxiaoli/p/4305477.html
Copyright © 2011-2022 走看看