0

我在深色操作栏 ( )上使用ShareActionProvider在代码中定义的 ,而不是 xml 。Theme.Holo/DeviceDefault.Light.DarkActionBar

这就是我所看到的:

在此处输入图像描述

请注意,几乎没有可见的提示表明共享图标和信使图标属于一起。周围的盒子是深色而不是浅灰色。

4

1 回答 1

3

在定义ShareActionProviderin 代码时,尤其是当操作栏具有不同的主题时(在这种情况下是因为它是黑暗的),您需要使用从操作栏获得的主题上下文,而不仅仅是常规上下文:

final Context themedContext = context.getActionBar().getThemedContext();
ShareActionProvider ap = new ShareActionProvider(themedContext);
menuItem.setActionProvider(ap);

感谢亚当鲍威尔指出这一点。

于 2012-12-27T20:28:22.693 回答