【问题标题】:android intent chooser - display chooser with one optionandroid 意图选择器 - 带有一个选项的显示选择器
【发布时间】:2017-06-24 09:09:28
【问题描述】:

我想创建一个意图选择只显示一个选项(复制到剪贴板),但是当我这样做时,意图会自动启动(复制到剪贴板)并且不显示任何选择器。 这是我的代码:

Intent copyToClipboard = new Intent(activity, ShareToClipboardActivity.class);
copyToClipboard.putExtra(Intent.EXTRA_TEXT, entry.getEntryShareLink());
LabeledIntent labeledCopyToClipboard = new LabeledIntent(copyToClipboard, activity.getPackageName(), "Copy!", 0);
List<LabeledIntent> intentList = new ArrayList<>();
intentList.add(new LabeledIntent(labeledCopyToClipboard, activity.getPackageName(), "Copy to clipboard", R.drawable.ic_content_copy_gray_24dp));

Intent chooserIntent = Intent.createChooser(new LabeledIntent(labeledCopyToClipboard, activity.getPackageName(), "Copy to clipboard", R.drawable.ic_content_copy_gray_24dp), "Share entry");
activity.startActivity(chooserIntent);

有人可以建议吗?

【问题讨论】:

  • 为什么首先需要一个意图选择器?制作一个按钮,点击它复制到剪贴板,不会吗?
  • 因为选择器是在运行时内置的,所以有时它只有一个选项,有时更多...
  • 那有什么关系呢?它复制到剪贴板。准备好。完成!
  • 因为用户不知道发生了什么
  • 是否有任何更新、解决方案、变通方法来解决此问题?

标签: android android-intent android-intent-chooser


【解决方案1】:

有些东西是可疑的!我是偏执狂还是您在这两行代码中定义了嵌套意图?这有必要吗?

LabeledIntent labeledCopyToClipboard = new LabeledIntent(copyToClipboard, activity.getPackageName(), "Copy!", 0);

Intent chooserIntent = Intent.createChooser(new LabeledIntent(labeledCopyToClipboard, activity.getPackageName(), "Copy to clipboard", R.drawable.ic_content_copy_gray_24dp), "Share entry");

【讨论】:

  • 是的,一个是实际意图,另一个是在选择器中显示
  • 您将labeledCopyToClipboard 添加到intentList。您使用新的 LabeledIntent 进行星构。 intentList 有什么用?
猜你喜欢
  • 1970-01-01
  • 2021-02-07
  • 2011-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多