第一行代码阅读笔记----显示隐式Intent的基本用法

1、显示Intent
意图明显,通过Intent启动另外一个活动,这是安卓中各组件进行交互的一种重要方式。
一般用于启动活动,启动服务,发送广播等场景。

实现方法,这里我只说思路,实践还是要自己实操才能明白:

1、首先多创建一个activity,命名为别的,这个就是待会咱们要调用的另外一个activity,可以跟主activity一样。
2、创建完后记得在AndroidManifest.xml中为新创建的activity进行注册。
   同样的,要将其包括在<application分支下
   ep:
   <activity android:name=".SecondActivity" >
   </activity>
3、由于我们创建的这一个新的活动并不是主活动,所以不需要配置<intent-filter>标签里的内容,所以不用理会
4、使用Intent实现调用另外一个activity
   Intent有多个构造函数的重载,其中一个是 Intent(Context packageContext, Class<?> cls)。
这个构造函数接收两个参数,第一个参数 Context 要求提供一个启动活动的上下文,第二个
参数 Class 则是指定想要启动的目标活动,通过这个构造函数就可以构建出 Intent 的“意图”。
所以,称做显示Intent
ep:
button1.setOnClickListener(new OnClickListener() {
@Override
	public void onClick(View v) {
		//我在按键单击事件中实现这个过程
		//当我按下button的时候,此时FirstActivity就会去调用SecondActivity,跳到另外一个界面去
		//返回主界面也很简单,只要按下手机上的back键就可以了
		Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
		//启动活动
		startActivity(intent);
	}
});

2、隐式Intent
   按照作者的书籍可以理解为,隐式就没有那么高调的去启动,而是偷偷摸摸的,比较低调,含蓄的作风。
   它并不明确的想要去启动哪一个活动,而是通过更为抽象的action和category等信息,交由系统去分析这个
   Intent,并去找出合适的活动去启动。
   那么如何隐式启动第二个活动呢?

   1、还是一样,和上面显式的一样第一个步骤
   2、打开AndroidManifest.xml配置<intent-filter>标签里的内容
	<activity android:name=".SecondActivity" >
		<intent-filter>
		 //指明了当前活动能够相应的Intent中带有的category
		 //这里要求只有action和category中的内容同时能够匹配上Intent中指定的action和category时,这个活动才能响应Intent
			<action android:name="com.example.activitytest.ACTION_START" />
			<category android:name="android.intent.category.DEFAULT" />
		</intent-filter>
	</activity>
	3、在事件中添加Intent
	ep:
	button1.setOnClickListener(new OnClickListener() {
	@Override
		public void onClick(View v) {
		Intent intent = new Intent("com.example.activitytest.ACTION_START");
		startActivity(intent);
		}
	});
	
时间: 2024-08-31 19:56:28

第一行代码阅读笔记----显示隐式Intent的基本用法的相关文章

第一行代码阅读笔记---基本知识

在res中,我们会看到很多目录,分别如下: drawable-hdpi drawable-ldpi drawable-mdpi drawable-xxhdpi layout menu values values-sw600dp values-sw720dp-land values-v11 values-v14 其实很简单,以上所有的目录中,drawable开头的文件夹是用来存放图片的,以value开头是用来存放字符串的,layout是用来存放布局文件的 menu文件夹是用来放菜单文件的. 很多情

第一行代码阅读笔记---详解分析第一个Android程序

以下是我根据作者的思路,创建的第一个Android应用程序,由于工具强大,代码都自动生成了,如下: package com.example.first_app; import android.os.Bundle; import android.app.Activity; import android.view.Menu; //MainActivity继承于Activity类 此处用到了java关键字extends public class MainActivity extends Activit

Android 中 Activity显示隐式跳转

安卓中经常涉及到activity的跳转,跳转怎么样在安卓中实现呢,如下. 创建第二个activity就是创建一个class,继承自Android.app.Activity. 创建第二个activity的同时需要在清单文件中配置,不然会找不到 <activity android:name="com.ldw.createActivity.SecondActivity"></activity> 入口activity有下面的代码,只要activity有下面的代码,就会创

HTML5 &amp; CSS3初学者指南(1) – 编写第一行代码

介绍 网络时代已经到来.现在对人们来说,每天上网冲浪已经成为一种最为常见的行为. 在网页浏览器中输入一段文本地址,就像http://www.codeproject.com,等待一下,网页就加载到浏览器窗口中.一个典型的网页是由文本.图像和链接组成的.除去内容上的差异,不同网站的网页也具有不同的外观和感受,以实现在网络上建立自己的身份品牌的目的. 如果你也曾想要了解你屏幕上的这些网页是如何被创建出并以各式各样的方式渲染的,那么这里正是你可以了解到这些知识的地方.让我们一起走进在浏览器中创建了这么多

第一行代码-酷欧天气showProgressDialog();代码报错

问题描述 酷欧天气showProgressDialog();代码报错 第一行代码的酷欧天气ChooseAreaActivity,showProgressDialog();总是显示报错,根据原版的代码修改后依然如此,想知道是什么原因. 以下是代码: package activity; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.app.ProgressD

【飞天stack】专访阿里李津:阿里云的第一行代码及专有云Apsara Stack的核心优势

随着计算日益成为水电煤一样的公共服务,越来越多的政府.大型企业以更加开放的姿态拥抱云计算.同时出于自身数据中心利旧和数据本地化的考虑,大量政企客户需要专属的云计算解决方案.4月20日,在云栖大会·深圳峰会上,阿里云发布专有云Apsara Stack,可为政企客户实现在自有的数据中心内构建完整的专属式云计算服务,为客户打造安全.可靠.弹性的云计算工作环境.  云栖大会·武汉峰会现场 而在云栖大会走到武汉之际,笔者在现场感受到阿里云的火热以及技术魅力,其中亮点之一的是阿里云资深产品总监李津就专有云的

Kryo简介及代码阅读笔记

更新:2012-08-01 版本 2.16长时间运行可能会导致OOM,版本2.18有bug,不能正确序列化map和collection. 真是悲剧,所用的每一个版本都有bug.不过从代码来看,作者有时的确比较随便..测试用例也少..(比起msgpack少多了) ======================================== Kryo官方网站:https://code.google.com/p/kryo/ 优点:     速度快!见https://github.com/eisha

编程之显示/隐式声明_相关技巧

显示声明 是程序中的一条说明语句,它列出一批变量名并指明这些变量的类型.如C.C++.Java中 复制代码 代码如下: // 显示声明 变量count,类型为int,占用空间大小各语言可能有所不同 int count; 又如JavaScript中 复制代码 代码如下: // 显示声明 变量count,但不知其类型,也不知其占用空间大小 var count; 隐式声明 指通过某种默认协定的方法将变量名与类型绑定 如在Fortain中,一个以字母I.J.K.L.M或者N(或其对应小写)开始,它们被隐

图片-关于学习《第一行代码》中发现的问题,不敢说是错误,应该是郭霖大神笔误。麻烦各位大神来教训晚辈。。。

问题描述 关于学习<第一行代码>中发现的问题,不敢说是错误,应该是郭霖大神笔误.麻烦各位大神来教训晚辈... _第一处问题:在fragment一章里关于动态加载fragment部分中,要添加的fragment类的代码如下 public class Fragment_3 extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedIn