7.2 Intent 的 category-高二《Android Studio移动应用开发基础》同步精品课件(电工版2019)

2023-05-25
| 14页
| 91人阅读
| 0人下载
精品

内容正文:

第7章 理解和使用 Intent Android Studio 移动应用开发基础(第 2 版) 目录 7.1 Intent 入门 7.2 同步练习一 . 7.3 细说 Intent 7.4 Intent 解析 7.5 获取 Activity 返回的结果 7.6 Intent 的综合应用案例 7.7 同步练习二 7.8 广播消息和广播接收器 . 7.9 同步练习三 . 7.3.3 Intent 的 category category 的含义是类别,它是 Android 对 Activity 进行分类的一种手段。Intent 中预定义了一些 category,常用的 category 包括 Intent.CATEGORY_DEFAULT、Intent.CATEGORY_LAUNCHER 、 Intent.CATEGORY_HOME 、Intent.CATEGORY_PREFERENCE、Intent.CATEGORY_CAR_DOCK、Intent.CATEGORY_APP_MARKET 等; 这个案例获取所有出现在 HOME 屏幕上的 Activity: 7.3.4 Intent 的 extra extra 只作为传递给目标 Activity 的附加数据,不作为挑选 Activity的匹配依据; extra 是以 key/value 形式表示的数据,其中的 key 是 String 类型的键,value 可以是 Java基本数据类型,也可以是实现了 android.os.Parcelable 接口的对象数据类型。Intent 提供了写入及读取基本数据类型数据的方法。 7.4 Intent 解析 Intent 对象与<intent-filter>标签是密切相关的:在使用 Intent 对象启动某个 Activity 时,必须将 Intent 对象中设置的属性(action、data 和 category)与<intent_x0002_filter>标签中配置的属性进行匹配,从而启动能够匹配的 Activity。将这种匹配操作称为Intent 解析。 (1)在显式匹配中,在 Intent 对象中明确指定要启动的 Activity 的名称,方法包括 new Intent(Context packageContext, Class<?> cls)、setComponent(ComponentName)、setClass(Context, Class)。 (2)在隐式匹配中,分为以下几种情况。 如果在 Intent 对象中设置了 action 且设置的 action 出现在<intent-filter>标签中,或者在<intent-filter>标签中未设置任何 action,则匹配;如果在 Intent 中未设定 action,则匹配所有的 Activity。 如果在 Intent 对象中设置了 data 且设置的 data 出现在<intent-filter>标签中,则匹配;如果在 Intent 对象中未设置 data,则只能匹配未设置 data 的 Activity。 如果在 Intent 对象中设置了 category 且设置的 category 出现在<intent-filter>标签中,则匹配;如果在 Intent 对象中未设置 category,则只能匹配未设置 category 的 Activity。 7.5 获取 Activity 返回的结果 如果需要获取被对象的 Activity 返回的结果。在使用 startActivityForResult()方法启动 Activity 时,在被启动的 Activity(称为目标 Activity)执行完毕后,Android 平台会调用源 Activity 的 onActivityResult()方法; startActivityForResult()方法的原型如下: 在目标 Activity 执行完毕后,Android 平台会启动者调用 onActivityResult()方法。方法的原型如下: 目标 Activity 使用setResult()方法设置返回结果。setResult()方法的原型如下: 举例说明如何启动一个 Activity,并且接收从目标 Activity 返回的结果; 该案例应用程序运行效果的首界面,点击按钮,界面中会显示两张图片,此时,点击任意一张图片,都可以关闭该 Activity,并且在首界面中显示所点击图片的编号; 新建名为 Ch0702 的 Android 应用程序工程。修改主界面布局文件 res/layout/activity_main.xml 中的代码: 在 res/layo

资源预览图

7.2 Intent 的 category-高二《Android Studio移动应用开发基础》同步精品课件(电工版2019)
1
7.2 Intent 的 category-高二《Android Studio移动应用开发基础》同步精品课件(电工版2019)
2
7.2 Intent 的 category-高二《Android Studio移动应用开发基础》同步精品课件(电工版2019)
3
7.2 Intent 的 category-高二《Android Studio移动应用开发基础》同步精品课件(电工版2019)
4
7.2 Intent 的 category-高二《Android Studio移动应用开发基础》同步精品课件(电工版2019)
5
7.2 Intent 的 category-高二《Android Studio移动应用开发基础》同步精品课件(电工版2019)
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。