问题描述
<group
android:id="@+id/pages"
android:checkableBehavior="single">
<item
android:id="@+id/mHomePage"
android:icon="@drawable/ic_baseline_home_24"
android:title="@string/home" />
<item
android:id="@+id/mAboutFragment"
android:icon="@drawable/ic_about"
android:title="@string/about_us" />
...
</group>
<group
android:id="@+id/actions"
android:checkableBehavior="none">
<item android:id="@+id/mActionShare"
android:title="@string/share_the_app"
android:icon="@drawable/ic_baseline_share_24"/>
...
</group>
碰巧第二组的文本比第一组大。我想专门缩小第二组的文字大小。 我该怎么做?
解决方法
要满足您的需求,您需要使用 SpannableString spannableString = new SpannableString(navigationView.getMenu().getItem(0).getTitle());
spannableString.setSpan(new TextAppearanceSpan(this,R.style.TextStyle),spannableString.length(),0);
navigationView.getMenu().getItem(0).setTitle(spannableString);
getItem
您可以看到 <style name="TextStyle">
<item name="android:textSize">10sp</item> //SPECIFY YOUR TEXT SIZE
</style>
方法需要一个菜单项索引:
- 首页项目的索引为0
- 项目 AboutFragment 的索引为1
- ActionShare 项目的索引为2
创建样式并将其命名为 TextStyle :
<iframe>