android教程it教程网,android Activity基础

1、销毁一个Activity

两种方式:1,点击返回键。2,调用finish方法.

2、Intent的调用

Intent主要用于各组件之间传递数据,例如可以用于启动Acitivity,Service,BroadCast

Intent的调用,分为显示调用和隐式调用

2.1 显示调用

具体的调用方式,就是调用Intent(Context packageContext,Class> cls)构造函数

2.2 隐式调用

2.2.1 指定一系列的抽象的信息:action,category和data.交由系统去分析这个Intent.并帮我们找出合适的活动去启动

2.2.2 action

在AndroidManifest.xml文件中,可以配置多个action.

在Intent中调用Intent(String actionName)构造函数去进行申明,但是只允许申明一个action。

action的匹配要求Intent中的action存在且必须和过滤规则中的其中一个action相同,并且注意大小写。

2.2.3 category

必须定义 ,因为会默认去进行匹配

匹配规则:可以没有,但是设置了,不管有几个,都必须与定义中的一致

调用intent对象的addCategory方法,来设置。

2.2.4 data

data由两部分组成:mimeType和URI.mimeType指媒体类型,比如image/jpeg、audio/mpeg4-generic和video/*等等。

URI的数据结构如下:

://:/[||]

URI例子:cotent://com.test.test:200/folder/subfolder

http://www.baidu.com:8080/search/info

data的模板:

android:host=""

android:port=""

android:path=""

android:pathPattern=""

android:pathPrefix=""

android:mimeType=""/>

scheme:URI的模式,比如http、file、content等。URI必须指定scheme

host:URI的主机名。必须指定。比如:www.baidu.com

port:URI的端口号。只有当URI中指定scheme和host才有意义

path:表示路径信息。表示完整的路径

pathPattern:表示路径信息。也表示完整的路径,但是会包含通配符。*表示0个或者多个字符。由于正则表达式的规范,

如果真实的字符*需要写成\\*,\写成\\\\

pathPrefix:表示路径前缀信息.

调用intent对象的setDataAndType方法,来设置。

例如:intentObj.setDataAndType(Uri.parse("file://abc"),"image/png")

2.3 Intent妙用

2.3.1 打开url

Intent intent = new Intent(Intent.ACTION_VIEW);

intent.setData(Uri.parse("http://www.baidu.com"));

startActivity(intent);

2.3.2 拨打电话

Intent intent = new Intent(Intent.ACTION_DIAL);

intent.setData(Uri.parse("tel:10086"));

startActivity(intent);

3、返回数据给上一个Activity

两个Activity之间数据的传递,可以使用intent进行保存数据,同时也会涉及到以下几个方法:

startActivityForResult(Intent intent,int requestCode);

setResult(int resultCode,Intent intent);

onActivityResult(int requestCode, int resultCode, @Nullable Intent data)

onBackPressed()

具体的调用顺序,如下图所示:

679a0a244313644e4ac6444dd979b4de.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值