在更新28.0.0之后,我删除了item.setShiftingMode(false);
,然后将此app:labelVisibilityMode="labeled"
添加到了xml中。
但是图标显示正确,但是标签被剪掉了仅显示一半的长文本
性能下降请给我建议,谢谢您的进步。
答案 0 :(得分:0)
嗨,大家好,我找到了更改文本大小的解决方案,但我无法确定这是否正确。现在,无论如何解决我的问题,都可以按照我的示例进行。 这些行添加您的style.xml文件:
<style name="BottomNavigationView">
<item name="itemTextAppearanceActive">@style/TextAppearance.BottomNavigationView.Active</item>
<item name="itemTextAppearanceInactive">@style/TextAppearance.BottomNavigationView.Inactive</item>
</style>
<style name="TextAppearance"/>
<style name="TextAppearance.BottomNavigationView"/>
<style name="TextAppearance.BottomNavigationView.Inactive">
<item name="android:textSize">12sp</item>
</style>
<style name="TextAppearance.BottomNavigationView.Active">
<item name="android:textSize">11sp</item>
</style>
然后将此行添加到“底部导航”视图中:
style="@style/BottomNavigationView"
答案 1 :(得分:0)
显然,此问题已得到here的注册和跟踪,并且是由于不必要的填充所致,因此,您可以使用下面的代码来删除该填充。
BottomNavigationMenuView menuView = (BottomNavigationMenuView) bottomNavigationView.getChildAt(0);
for (int i = 0; i < menuView.getChildCount(); i++) {
BottomNavigationItemView item = (BottomNavigationItemView) menuView.getChildAt(i);
View activeLabel = item.findViewById(R.id.largeLabel);
if (activeLabel instanceof TextView) {
activeLabel.setPadding(0, 0, 0, 0);
}
}
}