【问题标题】:Callback for Custom Item in Intent Chooser Screen意图选择器屏幕中自定义项目的回调
【发布时间】:2015-12-21 09:04:33
【问题描述】:

我的用例是从 Intent Chooser 的自定义下载选项中下载图像。我知道我可以通过添加如下代码来添加自定义选项:

Intent share = new Intent(Intent.ACTION_SEND);
share.setType("text/plain");       
share.putExtra(Intent.EXTRA_TEXT, message);

Intent addIntent = ;//whatever you want

Intent chooser = new Intent(Intent.ACTION_CHOOSER);
chooser.putExtra(Intent.EXTRA_INTENT, share );      
chooser.putExtra(Intent.EXTRA_TITLE, "title");

Intent[] intentArray =  {addIntent }; 
chooser.putExtra(Intent.EXTRA_INITIAL_INTENTS, intentArray);
startActivity(chooser);

我也有为我下载图像的功能。我的问题是,我是否可以检测到用户选择/单击了自定义选项,然后直接为我的下载功能设置回调并继续下载操作?

注意:我不想在此过程中启动任何新活动。只是寻找关于我如何在选择器中为这个自定义选项设置回调的指针。

【问题讨论】:

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


    【解决方案1】:

    我是否可以检测到用户选择/单击了自定义选项,然后直接为我的下载函数设置回调并继续下载操作?

    仅在 Android 5.1+ 上,如果您使用 the three-parameter flavor of createChooser(),您可以在其中提供一个 IntentSender,用于通知选择...然后仅当通过“直接设置回调到我的下载函数并继续下载操作”你的意思是“启动一个下载的活动”。

    否则,您需要滚动自己的选择器样式 UI,然后使用用户的选择来制作明确的 Intent 以将用户路由到请求的活动。

    【讨论】:

    • 非常感谢。这很有帮助。我想我会去推出我自己的自定义样式选择器。我会在几分钟后接受这个答案。
    猜你喜欢
    • 1970-01-01
    • 2011-10-17
    • 2018-06-09
    • 1970-01-01
    • 1970-01-01
    • 2018-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多