Android ShareActionProvider 设置文字颜色
Android ShareActionProvider Set Text Color
是否有适用于 Android ShareActionProvider 的样式,允许文本为白色而不是黑色。我试过:
<item name="android:textColor">@android:color/white</item>
<item name="android:itemTextAppearance">@style/menu_color</item>
<item name="android:textAppearanceListItem">@style/menu_color</item>
<item name="android:textAppearanceListItemSmall">@style/menu_color</item>
<item name="android:textAppearanceLarge">@style/menu_color</item>`
<item name="android:textAppearanceLargePopupMenu">@style/MyShareActionProviderStyle</item>`
<item name="android:textAppearanceSmallPopupMenu">@style/MyShareActionProviderStyle</item>`
<item name="android:actionMenuTextAppearance">@style/share_item_color</item>
我已经在许多不同的配置中尝试了所有这些属性,但似乎无法找到正确的 属性 来更改以使文本成为正确的颜色。
我使用的是 Holo 主题库,我没有使用 AppCompat 或 ActionBarSherlock。提前感谢您的帮助。
这是我最后做的:
首先,我创建了 ShareActionProvider
的子类,并在菜单 xml 文件中将该片段设置为 android:actionProviderClass
然后在 ShareActionProvider
子类的 onCreateActionView
中我这样做了:
View v = super.onCreateActionView();
for(int i=0; i<((ViewGroup)v).getChildCount(); ++i) {
View nextChild = ((ViewGroup)v).getChildAt(i);
TextView title = (TextView)nextChild.findViewById(android.R.id.title);
if(title != null){
title.setTextColor(Color.WHITE);
}
}
return v;
这让我的菜单文本变白了,就像我需要的那样。希望这对以后的人有帮助。
如果您使用的是工具栏,则不需要扩展 ShareActionProvider。只需要在toolabr中应用主题app:theme="@style/toolbarTheme"
这里是主题代码
<style name="toolbarTheme" parent="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<item name="android:textColor">@android:color/white</item>
<item name="android:textColorPrimary">@android:color/white</item>
</style>
是否有适用于 Android ShareActionProvider 的样式,允许文本为白色而不是黑色。我试过:
<item name="android:textColor">@android:color/white</item>
<item name="android:itemTextAppearance">@style/menu_color</item>
<item name="android:textAppearanceListItem">@style/menu_color</item>
<item name="android:textAppearanceListItemSmall">@style/menu_color</item>
<item name="android:textAppearanceLarge">@style/menu_color</item>`
<item name="android:textAppearanceLargePopupMenu">@style/MyShareActionProviderStyle</item>`
<item name="android:textAppearanceSmallPopupMenu">@style/MyShareActionProviderStyle</item>`
<item name="android:actionMenuTextAppearance">@style/share_item_color</item>
我已经在许多不同的配置中尝试了所有这些属性,但似乎无法找到正确的 属性 来更改以使文本成为正确的颜色。
我使用的是 Holo 主题库,我没有使用 AppCompat 或 ActionBarSherlock。提前感谢您的帮助。
这是我最后做的:
首先,我创建了 ShareActionProvider
的子类,并在菜单 xml 文件中将该片段设置为 android:actionProviderClass
然后在 ShareActionProvider
子类的 onCreateActionView
中我这样做了:
View v = super.onCreateActionView();
for(int i=0; i<((ViewGroup)v).getChildCount(); ++i) {
View nextChild = ((ViewGroup)v).getChildAt(i);
TextView title = (TextView)nextChild.findViewById(android.R.id.title);
if(title != null){
title.setTextColor(Color.WHITE);
}
}
return v;
这让我的菜单文本变白了,就像我需要的那样。希望这对以后的人有帮助。
如果您使用的是工具栏,则不需要扩展 ShareActionProvider。只需要在toolabr中应用主题app:theme="@style/toolbarTheme"
这里是主题代码
<style name="toolbarTheme" parent="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<item name="android:textColor">@android:color/white</item>
<item name="android:textColorPrimary">@android:color/white</item>
</style>