是否可以在Android版本的棉花糖之前创建自定义浮动文本选择菜单?

是否可以在Android版本的棉花糖之前创建自定义浮动文本选择菜单?,android,android-edittext,android-6.0-marshmallow,textselection,android-actionmode,Android,Android Edittext,Android 6.0 Marshmallow,Textselection,Android Actionmode,我想为文本选择创建一个自定义菜单。我知道可以使用setCustomSelectionActionModeCallback编辑操作栏的行为,但在我的情况下,我根本不希望该操作栏显示出来,我想要我自己已经实现的浮动自定义菜单 唯一的问题是,在TextView中选择文本后,无法不显示操作栏菜单 我需要的行为不是标准的剪切/复制/粘贴,我执行的操作是突出显示并将突出显示的文本部分保存到数据库中 我已经做了一些修补,我所能做的最好的是一个混乱的反射想法,即我在onCreateActionMode中返回fa

我想为文本选择创建一个自定义菜单。我知道可以使用setCustomSelectionActionModeCallback编辑操作栏的行为,但在我的情况下,我根本不希望该操作栏显示出来,我想要我自己已经实现的浮动自定义菜单

唯一的问题是,在TextView中选择文本后,无法不显示操作栏菜单

我需要的行为不是标准的剪切/复制/粘贴,我执行的操作是突出显示并将突出显示的文本部分保存到数据库中

我已经做了一些修补,我所能做的最好的是一个混乱的反射想法,即我在onCreateActionMode中返回false,并通过反射获得对文本选择句柄的引用。它起到了一半的作用,因为在这种情况下,任何形式的反思都是非常糟糕的做法

我希望最后一个支持库会在6.0中包含浮动文本菜单,我想我可以在该菜单中实现自己的自定义视图,但这是一厢情愿的想法


如果有人有任何有用的想法或库,那么我洗耳恭听。

正如您已经注意到的,使用反射是一种方法。我很确定这是唯一的一个。如果你对我的菜单感兴趣的话,看看碳。它的EditText几乎可以满足您的需要,但也具有反射功能

代码段太长,无法粘贴到此处,但以下是链接:


基本上,我隐藏了花哨的三星菜单,禁用了标准操作模式,并显示了我自己的弹出窗口,其中包含连接到标准复制/粘贴点击处理程序的选项。

这可能是理想的选择!我刚刚实现了Carbon,并用Carbon的EditText替换了我的TextView,但它仍然显示默认的ActionBar菜单。我还需要采取其他步骤来显示弹出窗口吗?编辑:我看到第188到222行被注释掉了,它们是我自定义菜单所需要的吗?当前的存储库代码还没有发布,所以maven版本没有新的复制/粘贴菜单。每个供应商都有自己的菜单实现,所以我需要时间检查所有案例。来自repo的代码应该可以工作,但您的设备可能还不受支持。如果愿意,请使用我的代码进行研究:)