博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android 之意图Intent的使用
阅读量:4289 次
发布时间:2019-05-27

本文共 1879 字,大约阅读时间需要 6 分钟。

Android中的Intent是一个非常重要且常用的类,可以用来在一个组件中启动App中的另一个组件或者是启动另一个App的组件,这里所说的组件指的是Activity、Service以及Broadcast。

Intent主要有以下几种重要用途: 

1. 启动Activity:可以将Intent对象传递给startActivity()方法或startActivityForResult()方法以启动一个Activity,该Intent对象包含了要启动的Activity的信息及其他必要的数据。 
2. 启动Service:可以将Intent对象传递给startService()方法或bindService()方法以启动一个Service,该Intent对象包含了要启动的Service的信息及其他必要的数据。
3. 发送广播:广播是一种所有App都可以接收的信息。Android系统会发布各种类型的广播,比如发布开机广播或手机充电广播等。我们也可以给其他的App发送广播,可以将Intent对象传递给sendBroadcast()方法或sendOrderedBroadcast()方法或sendStickyBroadcast()方法以发送自定义广播。

显式的intent:指定要跳转的类名

隐式的intent:不指定组件名,而指定Intent的Action,Data,或Category,当我们启动组件时, 会去匹配AndroidManifest.xml相关组件的Intent-filter,逐一匹配出满足属性的组件,当不止一个满足时, 会弹出一个让我们选择启动哪个的对话框。

Intent有七个属性:

ComponentName(组件名称)

Action(动作)----intent要完成的抽象动作,只要能有一个action;<action android:name="android.intent.action.MAIN" />表示是程序的入口。当一个Android应用中有一个以上的入口Activity时,安装App时会生成多个的app图标,这几个APP其实是同一个,卸载其中一个,另外的也会被卸载。

Category(类别)----用于为action提供附加类别信息,一般和action一起使用。android.intent.category.LAUNCHER决定Activity是否列入系统的启动器。如果没有这个设置,手机设置中的“应用管理”,可以看到应用成功安装了,但是由于没有App的启动器,所以桌面上找不到。

Data(数据)-----向action属性提供操作的数据,通常是URI对象

Type(MIME类型)

Extras(额外数据)-----通常用语多个action之间的数据交换,是一个Bundle对象,通过键值对进行数据存储。

Flags(标记)

 

------------Intent的创建使用三种方法---------

//        //通过制定的包名和类名,叫做显式意图        Intent inten = new Intent(this, NewActivity.class);//方法一////        Intent inten = new Intent();//方法二//        inten.setAction("newActivity");//设置跳转的动作//inten.addCategory("android.intent.category.DEFAULT");//categary要和清单文件中的categary一样;这一句必须要,否则报错//inten.setDataAndType(Uri.parse("newac:"+1101),"aa/bb");//newac要和清单文件中的scheme相同,aa/bb要和清单文件中的MIMIE相同////        //方法三//inten.setClassName("com.example.wofu.four","com.example.wofu.four.NewActivity");//第一个参数是包名,是清单文件中的package;第二个参数是要跳转的到的activity//        startActivity(inten);/*跳转到下一个页面*/

-------------manifest.xml------------

正式设置显式意图用的

 

 

 

转载地址:http://ztmgi.baihongyu.com/

你可能感兴趣的文章
JSP九大内置对象、四种作用域、跳转方式
查看>>
JSP 自定义标签
查看>>
JSP JavaBean
查看>>
从两个字符串中找出最大公共子字符串
查看>>
Java代码添加背景音乐
查看>>
Java面试题全集(上)
查看>>
JAVA泛型中的有界类型(extends super)
查看>>
炫酷进度条:Android 仿应用宝下载进度条
查看>>
Java程序内存的简单分析
查看>>
Javascript单例模式概念与实例
查看>>
SQL NULL 函数
查看>>
多例设计模式
查看>>
WebView的JavaScript与本地代码三种交互方式
查看>>
WebView的JavaScript与本地代码三种交互方式
查看>>
Android Studio里面配置Tesseract
查看>>
深入浅出JavaScript之this
查看>>
Android include标签的使用注意事项
查看>>
final成员变量和final局部变量
查看>>
Android数据加密之异或加密算法
查看>>
greenDao好的示例网址
查看>>