zoukankan      html  css  js  c++  java
  • Activity 之间调用与参数传递

    点击按钮跳转到另一个Activity2

    button2 = (Button) findViewById(R.id.button2);
            button2.setOnClickListener(listener2);

    listener2 = new OnClickListener() {
            public void onClick(View v) {
                setTitle("这是在ActivityMain");
                Intent intent2 = new Intent(ActivityMain.this, Activity2.class);
                startActivity(intent2); //启动这个动作

            }
        };


    Intent是什么?

    Intent是一个动作的描述类,里面封装了这个动作。

    Intent可以启动一个Activety、可以启动一个Service、可以启动一个Event

    结束一个Activity

    listener = new OnClickListener() {
                public void onClick(View v) {
                    finish();
                }
            };
            button = (Button) findViewById(R.id.button4);
            button.setOnClickListener(listener);
            setTitle("现在是在Activity2里");

    两个Activity 之间传值与返回值

    button1 = (Button) findViewById(R.id.button1);
            button1.setOnClickListener(listener1);

    listener1 = new OnClickListener() {
                public void onClick(View v) {
                    Intent intent1 = new Intent(ActivityMain.this, Activity1.class);
                    intent1.putExtra("activityMain", "数据来自activityMain"); //将名值对写入Extra变量
                    startActivityForResult(intent1, REQUEST_CODE); // 可回调onActivityResult方法的一次跳转。//第二个参数是一个整形值,用来在回调函数里面判定是那个操作的返回,这个值不能为0
                }
            };

    //获取返回的值

    @Override
        protected void onActivityResult(int requestCode, int resultCode, Intent data) {
            if (requestCode == REQUEST_CODE) {
                if (resultCode == RESULT_CANCELED)
                    setTitle("取消");
                else if (resultCode == RESULT_OK) {
                    String temp=null;
                     Bundle extras = data.getExtras();
                        if (extras != null) {
                            temp = extras.getString("store");//取出里面的名字为“store”的值
                        }
                    setTitle(temp);
                }
            }
        }

    //接收发过来的值

    Bundle extras = getIntent().getExtras();//返回调用它的Intent,返回其中的Extras,类型为Bundle,这个类型是名字对的封装只是他的值只能是简单类型和数组
                if (extras != null) {
                     data = extras.getString("activityMain");//获得名字为activityMain 的值
                }
            setTitle("现在是在Activity1里:"+data);

    //返回一值,给调用自己的Activity

    listener1 = new OnClickListener() {
                public void onClick(View v) {
                    Bundle bundle = new Bundle();
                    bundle.putString("store", "数据来自Activity1");
                    Intent mIntent = new Intent();
                    mIntent.putExtras(bundle);
                    setResult(RESULT_OK, mIntent);
                    finish();
                }
            };

  • 相关阅读:
    SCHTASKS /CREATE
    手机酷派4G5316 5313s 黑砖 求转成功 9008端口 9006端口 少走弯路选对镜像
    网络共享 相关知识与原理 操作步骤
    电脑 主板 硬盘的 电脑系统
    按键精灵 按键代码
    win7 快捷键 收集
    默认主页更改 主页锁定 打开浏览器时的网页设置
    按键精灵 以时间命名文件夹 创建文件 写入文件 和截图
    按键精灵-----按钮控制(开始子程序)的时候是要用到多线程的
    java web 大总结
  • 原文地址:https://www.cnblogs.com/finehappy/p/2023825.html
Copyright © 2011-2022 走看看