• Intent意图


    1、显式Intent

     button1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Intent intent = new Intent(FirstActivity.this,SecondActivity.class);  
                    startActivity(intent);
                }
            });

    2、隐式Intent

      指定一系列的action和category.每个intent中只能指定一个action,可以指定多个category。

      在AndroidManifest中添加

            <activity android:name=".SecondActivity" >
                <intent-filter>
                    <action android:name="com.example.activitytest.ACTION_START"/>
                    <category android:name="android.intent.category.DEFAULT"/>
                </intent-filter>
            </activity>

      调用addCategory()添加category。

      隐式intent其他用法:

      解析Uri

     button1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Intent intent = new Intent(Intent.ACTION_VIEW);
                    intent.setData(Uri.parse("http://www.baidu.com"));
                    startActivity(intent);
                }
            });

      <data>标签:用于指定当前活动相应说明类型的数据。

    3、传递数据

    (1)向下一个活动传递数据

      FirstActivity

     public void onClick(View view) {
                    String data = "Hello World";
                    Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
                    intent.putExtra("extra_data",data);
                    startActivity(intent);
                }

      secondActivity

         Intent intent = getIntent();    //获得启动secondActivity的intent
            String data = intent.getStringExtra("extra_data");
            Log.d("SecondActivity",data);

    (2)返回数据给上一个活动

      FirstActivity通过startActivityForResult()方法启动SecondActivity,在SecondActivity被销毁之后会回调上一个活动的OnActivityResult()方法,所以需要在FirstActivity中重写此方法。

      如果是通过back键返回FirstActivity,则重写onBackPressed()方法取得返回的数据。

      

      

  • 相关阅读:
    Sublime Text 3 绝对神器
    spring 笔记3: Spring 多环境配置文件切换
    elk-logstash: window下指定jdk目录
    通过slf4j/log4j的MDC/NDC 实现日志追踪
    spring 笔记2:Spring MVC : Did not find handler method for 问题的解决
    mysql一机多实例安装记录
    Java:通过反射复制父类字段到子类。
    mybatis研究:select性能对比
    spring " expected single matching bean but found 2" 问题一例。
    数组去重复
  • 原文地址:https://www.cnblogs.com/yl-saber/p/6043517.html
Copyright © 2020-2023  润新知