2016-04-24 56 views
3

我有這樣一段代碼在我menu.xml文件,這是一個導航視圖中:如何改變單一的菜單項文字大小

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
    <group> 
     <item 
      android:title="Blue" 
      android:id="@+id/blue"> 
      <menu> 
       <item 
        android:id="@+id/red" 
        android:title="Red" 
        /> 
      </menu> 
     </item> 
    </group> 
    <group> 
      <item 
       android:id="@+id/green" 
       android:title="Green" /> 
      <item 
       android:id="@+id/yellow" 
       android:title="Yellow"/> 
    </group> 
</menu> 

我想改變只有藍色項文本大小。我怎樣才能做到這一點??

回答

5

當你創建你的菜單,你可以改變你的文字大小是這樣的:

public boolean onCreateOptionsMenu(Menu menu) { 
    super.onCreateOptionsMenu(menu); 
    MenuInflater awesome = getMenuInflater(); 
    awesome.inflate(R.menu.menu_main, menu); 
    for(int i = 0; i < menu.size(); i++) { 
     MenuItem item = menu.getItem(i); 
     if (item.getItemId() == R.id.blue) 
     { 
      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

謝謝!有用 :) –