2015-04-24 9 views
5

ich versucht hatte, den Stil ändern, wie dies zu ändern:Wie die Menütextgröße

<item name="android:actionMenuTextAppearance">@style/MenuTextStyle</item> 
<stylename="MenuTextStyle"parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Menu"> 
     <item name="android:textColor">@android:color/white</item> 
     <item name="android:textSize">16sp</item> 
</style> 

Aber es hat funktioniert. Entschuldigung für mein Englisch. Wenn Sie es wissen, sagen Sie mir bitte. Vielen Dank im Voraus!

+0

http://stackoverflow.com/questions/25278637/how-resize-the-action-bar-menu-text-size-in-android –

Antwort

7

In Ihrer Anwendung Basis Thema, fügen Sie die folgende Artikel:

<item name="android:actionMenuTextAppearance">@style/customActionBar</item> 

Dann customActionBar wie folgt definieren:

<style name="customActionBar" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Menu"> 
    <item name="android:textSize">16sp</item> 
</style> 
+0

I Verwenden Sie die Symbolleiste in meiner Anwendung, damit Sie den Stil nicht wie xxx.ActionBar.menu verwenden können. – alanchen

3

Hier gehen Sie, sollten Sie den Text aus MenuItems zu SpannableStrings holen in Ihrem onCreateOptionsMenu, ändern Sie die Textgröße im Vergleich zur Standardgröße über RelativeSizeSpan. Wenn Sie absolute Schriftgröße eingeben möchten, verwenden Sie AbsoluteSizeSpan, z. bis 18 dpi = AbsoluteSizeSpan (18, true):

public boolean onCreateOptionsMenu(Menu menu) { 
    super.onCreateOptionsMenu(menu); 
    MenuInflater infl = getMenuInflater(); 
    infl.inflate(R.menu.menu_main, menu); 
    for(int i = 0; i < menu.size(); i++) { 
     MenuItem item = menu.getItem(i); 
    SpannableString spanString = new SpannableString(menu.getItem(i).getTitle().toString()); 
     int end = spanString.length(); 
    spanString.setSpan(new RelativeSizeSpan(1.5f), 0, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
    item.setTitle(spanString); 
} 
    return true; 
} 
+0

Zu einem solchen Code müsste man mehr Kommentare schreiben. – peterh

+0

Erklärungen werden jetzt gegeben. –