• Android连载21-复习以往内容(四)


    一、隐式Intent

    1.如何配置

    • AndroidManifest.xml配置intent-filter内容
    • 响应actioncom.example.activitytest.ACTION_START并且响应category才可以
    • FirstActivity.java中进行设置Intent.
    • 每个Intent只能指定一个action,但是可以指定多个category

    (1)Intent构造函数,有Intent(String action_name)
    (2)还用成员方法addCategory(String category_name)

    2.隐式Intent可启动其他程序的活动

    • 比如:调用浏览器等
    • 核心代码
      Intent intent = new Intent(Intent.ACTION_VIES);
      intent.setData(Uri.parse("http://www.baidu.com"));
     

    释义: 第一行系统内置动作;第二含,解析地址为Uri对象,在传给setData

    • 注意要在intent-filter中添加data标签
    • data标签的五种值:
    名称
    android:scheme 用于指定数据的协议部分
    android:host 用于指定主机部分
    android:port 用于指定主机端口
    android:parth 用于指定主机和端口后的部分
    android:mimeType 用于指定可以处理的数据类型

    3.向下一个活动传递数据

    两个Activity是如何练习到一起的

    • 写一段代码来演示,这两段分别在两个活动中,表示一个传到另一个
    String data = "Hello SecondActivity";
    Intent intent = new Intent(FirstActivity.class,SecondActivity.class);
    intent.putExtra("extra_data",data);
    startActivity(intent);
    Intent intent = getIntent();
    String data = intent.getStringExtra("extra_data");
    Log.d("SecondActivity",data);

    释义:putExtra方法,第一个参数是键,第二个参数才是要传递的数据。可以看到getStringExtra方法来接受。

    4.返回数据给上一个活动

    直接举例子

    Intent intent = new Intent(FirstyActivity.class,SecondActivity.class);
    startActivityForResult(intent,1);
    //点击事件代码省略
    Intent intent = new Intent();
    intent.putExtra("data_return","Hello FirstActivity");
    setResult(RESULT_OK,intent);
    finish();

    setResult()方法用于向上一个活动传递数据

    二、源码:

  • 相关阅读:
    Object.prototype的原型对象 格式化日期【js笔记】
    数组中去掉重复的 【js笔记】
    按照内容多少,每行自动按照内容较多的div设置其他div的高度【jq笔记】
    动态操作表格 【js笔记】
    关于记录任意选择行删除或者其他的操作【jq笔记】
    Good studying and day day up
    第三周星期一
    第二周星期天
    第二周星期六
    第二周星期五
  • 原文地址:https://www.cnblogs.com/ruigege0000/p/13205805.html
Copyright © 2020-2023  润新知