什么是createChooser时,我不得不使用意图? 我可以用这个方法做什么?(What is

2019-07-29 03:10发布

我一直在考虑看看了计算器,但余did't找到一个关于什么是“createChooser”为什么我可以使用和whick种情况是很好的利用它的定义。

提前致谢。

Answer 1:

例如:你在你的应用程序共享图片选项。

你像这样定义一个意图:

Intent picMessageIntent = new Intent(android.content.Intent.ACTION_SEND);
picMessageIntent.setType("image/jpeg");

File downloadedPic =  new File(
    Environment.getExternalStoragePublicDirectory(
    Environment.DIRECTORY_DOWNLOADS),
    "q.jpeg");

picMessageIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(downloadedPic));

当你调用比:

startActivity(picMessageIntent);  

能够得到这个图片在手机上的所有应用程序将上市。

如果你想custimize该列表的标题,你可以使用createChooser这样的:

startActivity(Intent.createChooser(picMessageIntent, "Send your picture using:"));



Answer 2:

当startActivity(意向)被称为首次从您的应用程序的用户可以看到能力来处理这个意图的所有应用程序的列表。

此外,还有一个选项可以始终处理使用从列表中的应用程序之一此意图。 如果使用此选项,则列表将不会被再次显示。

如果您在使用的意图,然后createChooser没有显示“总是使用这个应用程序”选项。 用户总是能看到这个名单。



Answer 3:

当你想使用的意图,创建自定义操作使用此方法...只是喜欢Android提供ACTION_VIEW等等......但在这里,当有多个选择执行一个操作这个选择器会弹出一个对话框,将有所有可用的选项,让用户选择一个...这里是一个例子



文章来源: What is createChooser when I have to use Intents? What I could do with this method?