首先,对于安卓开发,目前世界上流行的是使用的是Android studio 2.0 。(hh 学着来呗 书上说用这个,,)

今后就定一个计划 每天更新一个Android 随笔,增强一下自控力吧!!!

(∩_∩)  相信自己可以做到!!!

第一天 Intent用法

直接上代码

可见intent用法大体上有三种

  1. 显示调用   构造出intent后 传入FirstActivity.this 作为上下文 传入SecondAcctivity.class 作为目标活动  最后用startActivity执行这个Intent
  2. 隐式调用  
    1. 首先 给出要被动响应的活动 在AndroidManifest.xml里加上 action 和 category(MY_CATEGORY这个是后面可以调用函数加上的 暂时可以不加)
    2. 然后即可
      Intent intent = new Intent("com.example.activitytest.ACTION_START");
      startActivity(intent); 进行隐式调用 其中 intent这种创建方法便是传入了action的字符串,表明我要启动的活动,category 这里是default表示为默认的category。
    3. 每个Intent可以指定一个action 但是可以指定多个category 下面可以通过这句来增加一个category。  intent.addCategory("com.example.activitytest.MY_CATEGORY");
    4. 注意这里 对应一定要在要启动的活动的 intent-filter 加入 category 声明!!!
  3. 其他用法
    1. 打开网页  这里首先 要配置<intent-filter>里的data标签!!!    使得ThirdActivity可以响应所有的http协议的intent

      Intent intent = new Intent(Intent.ACTION_VIEW);
      intent.setData(Uri.parse("http://www.baidu.com"));
      startActivity(intent);
    2. 打电话  协议为tel

      Intent intent = new Intent(Intent.ACTION_DIAL);
       intent.setData(Uri.parse("tel:10086"));
       startActivity(intent);

    3. 传数据
      1.   首先 你想把活动FirstActivity的数据传给活动SecondActivity
      2. String data = "hello SecondActivity";
         Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
         intent.putExtra("extra_data", data);
         startActivity(intent); 用的是putExtra 传递数据 extra_data为键值 后面的data为实际要传的数据!!!
      3. 然后在SecondActivity 先用getIntent获得用于启动本活动的intent 在调用get X Extra获取传递的数据 X代表 类型 有String Boolean Int等等
      4. 不仅仅如此 还可以传递数据给上一个活动哦。。。 方法是用 startActivityForResult方法来 做到对一个活动在销毁时返回一个本活动的结果给上一个活动
      5. Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
        startActivityForResult(intent, 1); 这里用startActivityForResult启动SecondActivity 而不是startActivity。其中1是请求码 只要是唯一值就可以!!!
      6. 这里在SecondActivity里添加了活动结束后的返回数据逻辑    setResult方法是用来专门向上一个活动返回数据的,putExtra把数据存在了intent里。 一般第一个参数有RESULT_OK 和 RESULT_CANCELED 第二个参数是带有数据的intent 。  finish 销毁活动。

      7. 由于返回了FirstActivity活动 故在这里重写这个方法来接受返回的数据。

        requestCode是请求码 resultCode是setResult时设置的处理结果 data就是传入的带数据的intent
      8. !!!这里是通过点击按钮结束的活动从而进行传递数据  如果是按下back键回到FirstActivity的 我们可以重写 onBackPressed()方法来解决这个问题啦

以上是小叶子自己学习中做的一些笔记哈,欢迎大家一起讨论,指出不足,共同进步!!!

初学安卓开发随笔之 Intent 用法的更多相关文章

  1. 初学安卓开发随笔之 Menu、toast 用法、活动的四种启动模式 以及 一个方便的Base活动类使用方法

    Toast toast 是安卓系统的一种非常棒的提醒方式 首先定义一个弹出Toast的触发点,比如可以是按钮之类 其中 Toast.LENGTH_SHORT是指显示时长 还有一个内置变量为Toast. ...

  2. 安卓开发_startActivityForResult的详细用法

    一个需求:一个activity到另一个activity进行一些设置,返回第一个activity的时候 获取第二个activity设置的数据 百度了一下,发现startActivityForResult ...

  3. 学习安卓开发[4] - 使用隐式Intent启动短信、联系人、相机应用

    在上一篇学习安卓开发[3] - 使用RecyclerView显示列表中了解了在进行列表展示时RecyclerView的使用,本次记录的是在应用中如何通过隐式Intent调用其它应用的功能,比如发短信. ...

  4. 安卓开发学习笔记(三):Android Stuidio无法引用Intent来创建对象,出现cannot resolve xxx

    笔者在进行安卓开发时,发现自己的代码语法完全没有问题.尤其是创建intent对象的时候,语法完全是正确的,但是Android Stuidio却显示报错,Intent类显示为红色,如图所示: 代码如下所 ...

  5. 安卓开发30:AsyncTask的用法

    http://blog.csdn.net/initphp/article/details/10392093 安卓开发笔记系列(43)  在开发Android应用时必须遵守单线程模型的原则: Andro ...

  6. WPF开发随笔收录-仿安卓Toast

    一.前言 在项目中,经常需要用到消息提醒功能,在以前接触安卓开发那会使用过Toast,于是打算在WPF上也来模仿一个,话不多说,撸起袖子干起来! 二.正文 1.首先新建一个工程,工程的目录如下 2.编 ...

  7. 更多隐式Intent用法

    上几篇无论是显示的Intent或者隐式的Intent,都是要跳转的自己添加指定的页面,如果想要跳转到百度首页或者跳转到联系人面板等,前面的知识显然是很不实用的.这里,将要针对其它的一些Intent用法 ...

  8. 学习安卓开发[5] - HTTP、后台任务以及与UI线程的交互

    在上一篇学习安卓开发[4] - 使用隐式Intent启动短信.联系人.相机应用中了解了在调用其它应用的功能时隐式Intent的使用,本次基于一个图片浏览APP的开发,记录使用AsyncTask在后台执 ...

  9. 安卓开发(3)—1— Activity

    安卓开发(3)-1- Activity 3.1 Activity是什么: 在前面安卓概述中有提到,Activity是Android开发中的四大组件,所有在app里可以看到的东西都是Activity里面 ...

随机推荐

  1. JavaScript数组基础及实例

    js数组 和var i=1;这样的简单存储一样是js中的一种数据结构,是专门用来存储多个数据的一种数据结构. 摘:数组是一组数据的集合,其表现形式就是内存中的一段连续的内存地址,数组名称其实就是连续内 ...

  2. 实现Runnable接口和继承Thread类之间的区别

    在Java语言中,我们都知道,有两种创建线程的方式,一中是使用Runnable接口,另一种是使用Thread类. public class DemoRunnable implements Runnab ...

  3. Bash中的数学计算

    一.整数计算 1.整数 $delare -i num$num=5+5$echo $num10 $num="5 + 8"$echo $num13注意:算式中如果有空格,需要用引号引起 ...

  4. Centos常用命令及解释

    ps -ef|grep java ps:将某个进程显示出来-A 显示所有程序. -e 此参数的效果和指定"A"参数相同.-f 显示UID,PPIP,C与STIME栏位. grep命 ...

  5. R语言统计分析技术研究——岭回归技术的原理和应用

    岭回归技术的原理和应用 作者马文敏 岭回归分析是一种专用于共线性分析的有偏估计回归方法,实质上是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息,降低精度为代价获得回归系数更为符合 ...

  6. Ubuntu14.04配置3389远程桌面连接

    1.安装xrdp sudo apt-get install xrdp -y 2.安装vnc4server sudo apt-get install vnc4server -y 3.安装xfce4 su ...

  7. js返回顶部封装 简洁

    js返回顶部封装 简洁: 加入html页面body最后面即可. <script> a(); function a() { $(function() { if ($(".j-to- ...

  8. web开发中前后端传值

    在JavaScript中,页面与页面间的传值需要注意. 比如,我们通过url向下个页面进行传一个数字时,到下个页面进行解析出来后可能是一个字符串.这样会导致一个现象.调试时,发现我要传的值的确传过来了 ...

  9. 一个"2-SUM"问题

    题目要求: Download the text file here. (Right click and save link as). The goal of this problem is to im ...

  10. 【原创】 Docker 中 运行 ASP.NET Core 站点

    一. 建立 .NetCore 项目  a.新建项目 b.选择项目类型 c.添加控制器 d.添加视图 e.修改默认请求 f.发布 二. 准备 CentOS 环境 a.准备虚拟机 b.安装 docker ...