Android组件通讯与广播消息(2)—Intent 启动 Activity

本文介绍了Android系统中如何使用Intent实现不同Activity间的切换和数据传递,包括显式启动与隐式启动两种方式,并列举了Intent常用动作。

        在Android系统中,应用程序一般有多个 Activity, Intent 可以实现不同 Activity 之间的切换和数据传递。

显式启动

显式启动需要在 Intent 中指明启动的 Activity 所在的类。

关键代码:

//1.创建一个 Intent,并为它指定当前程序的上下文,以及要启动的 Activity
Intent intent = new Intent(SplashActivity.this,MainActivity.class);
//2.把创建好的 Intent作为参数传递给 startActivity()方法
startActivity(intent);

可将上述代码,放到事件监听的响应代码里,实现控制从一个 Activity 启动新的 Activity。

隐式启动

隐式启动不需要指明启动哪一个 Activity ,而由系统来决定。

        选择隐式启动 Activity,Android 系统会在程序运行时解析 Intent,并根据一定的规则对 Intent 和 Activity 进行匹配,使 Intent 上的动作、数据与 Activity 完全吻合。//匹配的组件可以是程序本身的 Activity,也可以是 Android 内置的 Activity,还可以是第三方应用程序提供的 Activity。

关键代码:

//Intent构造函数第一个参数是 Intent 需要执行的动作;第二个参数是URI,表示需要传递的数据
Intent intent = new Intent(Intent.ACTION_VIEW,Uri.parse("https://my.oschina.net/zhangyujian/blog"));
startActivity(intent);

说明:ACTION_VIEW 表明需要启动具有浏览功能的 Activity,再根据 URI 判断浏览电话号码还是浏览网页

Intent 常用动作

动作简要说明
ACTION_ANSWER接听电话
ACTION_CALL拨打电话
ACTION_DELETE删除所提供数据
ACTION_DIAL打开拨号界面
ACTION_EDIT编辑所提供数据
ACTION_INSERT当前位置插入新项
ACTION_PICK列表中选取一项
ACTION_SEARCH搜索动作
ACTION_SENDTO向提供的联系人发信息
ACTION_SEND发送数据
ACTION_VIEW浏览功能(浏览器/拨号)
ACTION_WEB_SEARCHWeb搜索

转载于:https://my.oschina.net/zhangyujian/blog/794708

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值