Android学习(使用Intent在活动之间切换)

在AndroidManifest.xml文件里,`

<activity android:name=".BaseInfomation">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

android.intent.action.MAIN代表这个活动为主活动。下面添加一个新的活动。

添加新Activity

在android studio中点击在这里插入图片描述变成在这里插入图片描述。(在project目录下更接近项目的真实存储环境,而Android是经过IDE转换过的。)依次点击app—>src–>main–>java找到自己存储的包名,在包文件夹右键–>new–>activity,选择合适的模板就能新建一个activity了

通过Intent实现活动之间的转换

Intent有两种使用方法,分别是显示的和隐式的。
首先,如果要在一个活动中打开另一个活动,需要事件来触发,例如在第一个活动中新建一个button,通过button(按钮)的click(点击)事件来转到第二个活动中。button事件的注册可以参见如何使用Button控件

显示使用Intent

在第一个activity中的button事件中添加如下代码:

Intent intent = new Intent(第一个活动的名字.this,第二个活动的名字.class);
context.startActivity(intent);

现在来分析这段代码:
Intent有多个构造函数的重载,我们使用的就是Intent(Context packageContext,Class<?>cls)。第一个参数Context是上下文活动,一般是当前要调用这个函数的类或函数;第二个参数Class是要启动的目标活动。我们new出一个Intent的对象后要使用Activity类中提供的startActivity()方法来启动,参数就是intent.

隐式使用Intent

现在找到AndroidManifest.xml文件(所有的活动都要在这个文件中注册),app–>src–>main–>AndroidManifest.xml 添加下面代码

<activity android:name=".******">
	<intent-filter>
		<action android:name="com.example.activitytest.ACTION_START" />
		<category android:name="android.intent.category.DEFAULT"/>
	</intent-filter>
</activity>

其中指明了响应哪个活动,则精确指明了活动能响应的intent可能带有category。只有action和category同时匹配上,才会被响应.
然后再在触发事件中添加:

Intent intent = new Intent("com.example.activitytest.ACTION_START");
startActivity(intent);

现在已经能响应了,并且效果和显示声明是一样的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值