意图:删除始终/仅一次按钮

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了意图:删除始终/仅一次按钮相关的知识,希望对你有一定的参考价值。

我是android开发的新手。

打开Intent.ACTION_GET_CONTENT时是否可以删除两个按钮(始终/仅一次)?

这是我目前的代码。

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent,PICK);
答案

我找到了实现这个目标的方法:

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
Intent openInChooser = Intent.createChooser(intent, "Open in...");
startActivityForResult(openInChooser,PICK);
另一答案

这是一个系统生成的对话框,因此您无法对其进行更改。

您可以使用queryIntentActivities()获取可以响应您的意图的应用程序列表,然后根据您的喜好在没有按钮的情况下在您自己的对话框中显示它们。

另一答案

关键是要创建一个Intent.createChooser(),如果你调用Intent.createChooser(),将它传递给你的Intent对象,它会返回你的意图版本,它将始终显示选择器。例:

Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my awesome text to share.");
sendIntent.setType("text/plain");
startActivity(Intent.createChooser(sendIntent, "Share via"));

以上是关于意图:删除始终/仅一次按钮的主要内容,如果未能解决你的问题,请参考以下文章

从片段创建子意图

使用意图从另一个片段调用一个片段

从意图活动访问片段方法

如何在按钮单击时添加/删除片段?

无法使用Chooser为每个应用只询问一次startActivity()

如何从活动意图到特定片段