Android中用inteng启用不同应用中的活动

本文介绍了Android中Intent的使用方法,包括显式和隐式意图的创建、如何传递额外信息、如何设置意图过滤器以及如何使用Intent.createChooser显示选择器对话框。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Intent intent = new Intent(this,SecondActivity.class);
这个意图是一个显式意图,我们明确地告诉Android要让它启动哪个活动类。
如果想要完成某个动作,但是不知道由哪个活动完成,我们可以用隐式意图,由哪个动作完成则留给Android来处理。
Intent intent = new Intent(action);
这里的action是我们要完成的动作的类型,Android提供了很多标准的动作,例如,可以使用Intent.ACTION_DIAL拨号,使用Intent.ACTION_SEND发送消息等等。所以创建一个意图发送消息可以使用如下代码。
Intent intent=new Intent(Intent.ACTION_SEND);
增加额外消息
一旦指定想要使用的动作,我们可以为它指定额外的信息。我们希望随着意图传递一些文本,这些文本将构成我们要发送的消息的主题。为此,可以使用如下代码:
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT,"hello");
 如果还想增加其他信息,可以使用putExtra()方法。例如,你想指定消息的主题,可以用如下代码设置:
intent.putExtra(Intent.EXTRA_SUBJECT,subject);
 意图过滤器可以告诉Android哪些活动处理哪些动作,如下所示
<activity android:name="ShareActivity">
    <intent-filter>
        <action android:name="android.intent.action.SEND"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <data android:mimeType="text/plain"/>
        <data android:mimeType="image/*"/>
    </intent-filter>
</activity>
必须包含第四行的代码,没有这个类别的意图过滤器会被忽略掉,因为它们不能接受隐式意图
Intent.createChooser()显示一个选择器对话框,它不会提供选项来选择默认活动,而是每次都要求选择一个活动(事实上这也是我们想要的)
Intent chosen=Intent.createChooser(intent,“Send Message”);
 第二个参数是选择器的标题,显示在屏幕的最上面
这样,基本上就算完成了
Intent intent=new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT,"hello");
String choose=getString(R.string.app_name);
Intent chosen=Intent.createChooser(intent,choose);
startActivity(chosen);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值