1

オーバーフロー メニューのあるアクション バーがあります。そのオーバーフロー メニューには、各項目にテキストがあります。現在、アイテムは左揃えになっています。そして、XML を介してオーバーフロー メニューの中央に配置する必要があります。

以下に私のthemes.xmlがあります-「myCustomMenuTextApearance」スタイルで「gravity」属性を使用しましたが、機能しませんでした。「重力」属性を「MyAppActionBarTheme」スタイルに移動すると、アイテムが中央に配置されただけでなく、アクティビティレイアウトにある残りの TextView もすべて機能しました。それは私がまったく欲しかったものではありません。

これらのリンクは見つかりましたが、ヘルプは見つかりませんでした: 1. https://stackoverflow.com/questions/22702588/align-items-inside-of-a-menu-coming-from-actionbar

アクションバーのオーバーフロー メニューでメニュー項目のテキストを揃える方法

Androidでメニューアイテムのテキストを中央に揃えます

<?xml version="1.0" encoding="utf-8"?>

<style name="MyAppActionBarTheme" parent="android:Theme.Holo.Light">
    <item name="android:popupMenuStyle" tools:targetApi="11">@style/MyApp.PopupMenu</item>
    <item name="android:itemTextAppearance">@style/myCustomMenuTextApearance</item>
    <item name="android:actionBarStyle" tools:targetApi="11">@style/MyApp.ActionBar</item>

</style>

<!-- The beef: background color for Action Bar overflow menu -->
<style name="MyApp.PopupMenu" parent="android:Widget.Holo.Light.ListPopupWindow">
    <item name="android:popupBackground">@drawable/ab_menu_bkg</item>

</style>

<style name="myCustomMenuTextApearance" parent="@android:style/TextAppearance.Widget.TextView.PopupMenu">
    <item name="android:textColor">@color/red</item>
    <item name="android:gravity">center_horizontal</item>
</style>

<!-- Bonus: if you want to style whole Action Bar, not just the menu -->
<style name="MyApp.ActionBar" parent="android:Widget.Holo.Light.ActionBar.Solid">

    <!-- Blue background color & black bottom border -->
    <item name="android:background">@color/red</item>
</style>

どんな助けでも大歓迎です。

4

1 に答える 1