会挽雕弓如满月,西北望,射天狼。这篇文章主要讲述Android基础Activity篇——Intent相关的知识,希望能为你提供帮助。
1.显式的Intent
intent是用来各各活动之间切换的,还可以用来传递参数。
项目还是使用之前创建的ActivityTest项目,这里新建一个活动SecondActivity.java,并且勾选创建second_layout.xml。
在second_layout.xml。写入代码如下。
< ?xml version="1.0" encoding="utf-8"?> < LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> < Button android:id="@+id/button_2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Button 2" /> < /LinearLayout>
AS已经自动在AndroidMainfest.xml中自动注册了该活动。
< activity android:name=".SecondActivity"> < /activity>
而且也在该活动中自动引入了second_layout.xml的布局。
setContentView(R.layout.second_layout);
2.在FirstActivity中onClick()方法添加代码
Intent intent=new Intent(FirstActivity.this,SecondActivity.class); startActivity(intent);
使用Intent声明并用构造方法创建一个Intent对象。
Intent()构造方法中,有两个参数。第一个是Context,即上下文,第二个是目标活动,Class类。
3.隐式Intent
不明确指定目标活动,而是由系统自行分析,最后响应活动。
4.在AndroidMainfest.xml中添加代码
< activity android:name=".SecondActivity"> < intent-filter> < action android:name="com.example.activitytest.ACTION_START"/> < !--表示该活动可以响应--> < category android:name="android.intent.category.DEFAULT"/> < !--设置类型为默认--> < /intent-filter> < /activity>
5.修改FirstActivity中按钮的点击事件
Intent intent=new Intent("com.example.activitytest.ACTION_START");
注意这里Intent构造方法传参的是一个action字符串。
注意:每一个Intet对象只能有一个action,但是可以有多个category。
intent.addCategory("com.example.activitytest.MY_CATEGORY"); //通过此方法添加category
注意:只有当action与category都是匹配的,活动才能响应。如果不是程序会崩溃的。
【Android基础Activity篇——Intent】
推荐阅读
- Android Studio 3.0.1 又见恶心爆的bug。。。xiete
- react native android模拟机调试
- Android Studio生成签名安装包(Generate Signed APK)
- 安卓ListView的使用
- 极路由刷机图文详细教程:极路由刷机救砖步骤详细说明
- 小米随身wifi怎样买?小米随身wifi购买流程
- 小米随身wifi怎样用?小米无线路由wifi运用办法
- 小米随身wifi云u盘怎样用?小米无线路由器云u盘技巧运用办法
- 小米随身wifi怎样?小米无线路由wifi技巧评测