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);
这个意图是一个显式意图,我们明确地告诉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);