问题描述
我有我的活动一个ListView。在该列表视图中长preSS,我有上下文操作栏打开。它有一个共享选项共享通过Gmail / WhatsApp的列表中选定的项目(多可以选择项)/等。
<项目
机器人:ID =@ + ID / menu_share
机器人:标题=分享
机器人:图标=@机器人:可绘制/ ic_menu_share
机器人:actionProviderClass =android.widget.ShareActionProvider
应用:showAsAction =ifRoom/>
这是菜单布局文件分享我的选择。
我有一个类实现ActionMode.Callback处理上下文操作栏和图标。
我初始化重写 onCreateActionMode(ActionMode模式,菜单菜单)内的ShareActionProvider对象
共享菜单项。
mShareActionProvider =(ShareActionProvider)menuItem.getActionProvider();
我的列表视图中包含文件名。
我的要求是,如果用户选择列表视图(第一长preSS再正常preSS为连续选择)多个项目,我应该能够分享所有这些文件。
我用的是下面这样一个意图(对应于列表视图中的文件名的所有文件的音频 - AMR文件)。
意图shareIntent =新意图(Intent.ACTION_SEND_MULTIPLE);
shareIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM,uriList);
shareIntent.setType(音频/ AMR);
下面,uriList是尤里斯的ArrayList。现在我应该在哪里调用的方法 mShareActionProvider.setShareIntent(意向);
?
我不能把它在 onCreateActionMode(ActionMode模式,菜单菜单)
,因为用户可以在第一长$ P后,在列表中选择一些项目$ PSS。
如果我直接在 onActionItemClicked(ActionMode模式,菜单项项)称之为
,我的分享图标似乎无效。
如果我把它在这两个 onCreateActionMode(ActionMode模式,菜单菜单)
和 onActionItemClicked(ActionMode模式,菜单项的项目)
,共享意图似乎并没有被更新。请帮助..
Try calling it there, but also call it again in onItemCheckedStateChanged()
, when the mix of checked items changes, providing a new Intent
that has the updated extras.
这篇关于如何共享语境中的操作栏使用ShareActionProvider多个文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!