1

在我正在工作的项目中,我需要在某些活动中显示上下文菜单,除了项目名称之外,我们还希望显示一些关于操作的描述性文本。

这意味着让每个菜单项(可能)显示多行文本,并且描述性文本的颜色与标题不同。

这在附图中得到了更好的解释。

我想要一个带有标题 + 描述性文字的菜单项

在创建这个问题之前,我已经做了一些研究,但找不到任何适合这个目的的东西。因此,任何关于此事的意见,无论是否可能或如何完成,都非常受欢迎:)

4

2 回答 2

1

简短的答案是肯定的,但长答案并不容易。这将需要深入研究 Android 源代码并进行大量研究。这取决于额外文本的重要性。

如果您有兴趣,请查看这篇博文(及其评论部分),其中介绍了源代码的一些重要部分。它没有具体回答您的问题,但它至少应该为您指明正确的方向来开始寻找。

如果您不想这样做但迫切需要纯文本以外的其他内容,最后一种可能性是使用菜单图标属性来显示描述性图像而不是文本或包含文本的图像。但是,上下文菜单不支持图标,因此您必须重新考虑您的 UI 以及这是否会导致问题。

抱歉,这可能不是您希望的那种答案!

于 2013-08-27T15:00:54.587 回答
-1

虽然我以前没有做过这种确切的事情,但我很确定您可以通过扩展自定义菜单 XML 来实现这一点,该菜单 XML 在每个元素中包含两个单独的文本视图,您可以根据自己的喜好设置样式。例如,您将在 a 中创建它 context_menu.xml,然后执行类似的操作...

@Override
public void onCreateContextMenu(ContextMenu menu, View v,
                                ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.context_menu, menu);
}

在 Android 开发网站http://developer.android.com/guide/topics/ui/menus.html#context-menu上阅读有关上下文菜单的更多信息

于 2013-08-27T00:22:01.450 回答