簡體   English   中英

更改標題文本顏色和菜單android動作欄的大小

[英]changing title text color and size of menu android action bar

我正在開發Android應用程序,在我的應用程序中,我正在使用Sherlock操作欄。 我在我的操作欄中使用了一些菜單。

<menu xmlns:android="http://schemas.android.com/apk/res/android">

<item android:id="@+id/card_menu"
      android:title="C123" 
      android:showAsAction="always">
    <menu>
        <item android:id="@+id/C0"
              android:title="C0"/>
        <item android:id="@+id/c1"
              android:title="c1" />
        <item android:id="@+id/c2"
              android:title="c2" />
    </menu>
    </item>
<item android:id="@+id/notification"
  android:title="Notifications"
  android:showAsAction="always"
  android:actionLayout="@layout/notification_icon"
  android:icon="@drawable/notification"
  />
<item android:id="@+id/filter"
  android:icon="@drawable/filter"
  android:title="Filter" 
  android:showAsAction="always"
  />

</menu>

我把這個菜單顯示在我這樣的活動中..

inflater.inflate(R.menu.menu_type2, menu);

現在我想做的是我想改變菜單項的標題顏色(c123)。 我可以從樣式更改子菜單的顏色,但無法更改該項目文本。 我按照以下方式嘗試了這個。

// this change my sunbmenu text color but I am not able to change color of item text(c123)
<item name="android:dropDownListViewStyle">@style/MyPopupMenu</item>
<item name="dropDownListViewStyle">@style/MyPopupMenu</item>

<style name="MyPopupMenu" parent="Widget.Sherlock.ListPopupWindow">
 <item name="android:textAppearance">@style/TextAppearance.Sherlock.Widget.PopupMenu</item>
 <item name="android:dropDownSelector">@color/white</item>
 <item name="android:dividerHeight">@dimen/divider_height</item>
 <item name="android:divider">@color/maroon</item>

</style>

<style name="TextAppearance.Sherlock.Widget.PopupMenu" parent="android:style/TextAppearance.Holo.Widget.ActionBar.Menu">
 <item name="android:textColor">@color/white</item>
</style>  

我想修改該菜單項樣式更改文本的顏色和大小以及該背景。 怎么做。 需要幫助..謝謝..

您可以使用SpannableString而不是String輕松更改MenuItem文本的顏色。

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.your_menu, menu);

    int positionOfMenuItem = 0; // or whatever...
    MenuItem item = menu.getItem(positionOfMenuItem);
    SpannableString s = new SpannableString("My red MenuItem");
    s.setSpan(new ForegroundColorSpan(Color.RED), 0, s.length(), 0);
    item.setTitle(s);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM