Intent 选择器屏幕中自定义项目的回调
Callback for Custom Item in Intent Chooser Screen
我的用例是从 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);
我也有为我下载图像的功能。我的问题是,我可以检测到用户自定义选项是 selected/clicked 然后直接设置回调到我的下载函数并继续下载操作吗?
注意:我不想在此过程中启动任何新的 activity。只是寻找有关如何在选择器中为此自定义选项设置回调的指示。
Can I detect that the custom option was selected/clicked by the user and then set a callback to my download function directly and proceed with the download operation ?
仅在 Android 5.1+ 上,如果您使用 the three-parameter flavor of createChooser()
,您可以在其中提供一个 IntentSender
,它会收到有关选择的通知...然后只有 "set a callback to my download function directly and proceed with the download operation" 你是说 "launch an activity that does the download".
否则,您需要推出自己的选择器样式 UI,然后使用用户的选择来制作显式 Intent
以将用户路由到请求的 activity。
我的用例是从 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);
我也有为我下载图像的功能。我的问题是,我可以检测到用户自定义选项是 selected/clicked 然后直接设置回调到我的下载函数并继续下载操作吗?
注意:我不想在此过程中启动任何新的 activity。只是寻找有关如何在选择器中为此自定义选项设置回调的指示。
Can I detect that the custom option was selected/clicked by the user and then set a callback to my download function directly and proceed with the download operation ?
仅在 Android 5.1+ 上,如果您使用 the three-parameter flavor of createChooser()
,您可以在其中提供一个 IntentSender
,它会收到有关选择的通知...然后只有 "set a callback to my download function directly and proceed with the download operation" 你是说 "launch an activity that does the download".
否则,您需要推出自己的选择器样式 UI,然后使用用户的选择来制作显式 Intent
以将用户路由到请求的 activity。