在安卓系统菜单(上下文菜单)中添加项目是否可行?

6
当我输入一些文本并按住它时,上下文菜单会呈现出剪切、复制、选择文本等项目。
有没有办法将自己的自定义项添加到此上下文菜单中?我不知道这些东西是如何工作的,但我猜应该可以像注册活动和广播一样在清单中注册某些内容...
谢谢,
欢迎任何想法 enter image description here

3
您可以使用“意图过滤器”让您的应用程序监听某些事件,并将自己呈现为处理它的可行选项。例如,如果用户在Google地图上点击公交车站,则可以呈现您的应用程序作为可调用的选项。同样,对于您呈现的上下文菜单也应该是可能的。 - Till Helge
你能提供一些源代码吗?或者给我一些链接?我已经使用过intent-filter,但我不知道该注册什么以及如何使菜单项显示在Android系统菜单中... - Lukap
2个回答

3

有没有办法将我的自定义项目添加到此上下文菜单中?

仅适用于您自己的活动中的小部件,而不是整个系统。

此外,即使对于您自己的活动,EditText也存在问题,因为某些设备制造商绕过了正常的上下文菜单系统,因此您无法添加到它们中。

话虽如此,对于您自己的活动,只需按照说明创建上下文菜单即可为感兴趣的小部件创建上下文菜单。


1
你尝试在EditText上设置onLongClickListener了吗?虽然不能让你添加到当前列表中,但你可以让自己的对话框弹出来,然后将所有选项添加到上面,或者其中一些,或者没有,并添加自己的选项。
我不确定你所要求的是否完全可能,即使是可能的,我的方法也需要更多的工作,但这样你就能完全掌控。

1
抱歉,这不是我要求的。我不想在自己的活动中添加项目,而是想将菜单列表项添加到从Android创建的菜单中。我想将我的应用程序注册为某些特殊类型的MIME类型的处理程序... - Lukap
哦,你的意思是针对整个Android系统,而不仅仅是覆盖你自己的应用程序。非常抱歉,我完全误读了。我不知道如何处理这样的事情。请忽略我的回答 :) 祝好运 - NotACleverMan
没有问题,也许我没有准确描述我的意图。我甚至不知道这是否可能 :-) . . . - Lukap

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接