实现5个项目的BottomNavigationView-始终显示标签-我正在使用以下方法:
<android.support.design.widget.BottomNavigationView
android:id="@+id/navigation"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="?android:attr/windowBackground"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:menu="@menu/navigation"
app:labelVisibilityMode="labeled"/>
不幸的是,结果处于活动状态时会连字,如图所示:
我尝试为标签的活动文本设置不同的样式:
app:itemTextAppearanceActive="@style/text_navigation_active_labels"
-styles.xml-
<style name="text_navigation_active_labels">
<item name="android:breakStrategy">simple</item>
<item name="android:hyphenationFrequency">none</item>
</style>
但是结果是完全一样的(无论我是只使用中断策略,hyphenationFrequency还是两者都使用)。我目前正在API 27物理电话上对其进行测试。
感谢您的帮助。
答案 0 :(得分:2)
由于5个项目可能会占用很大的空间,因此有必要妥协文本大小。为了解决这个问题,在BottomNavigationView文本中添加自定义样式即可完成工作:
<android.support.design.widget.BottomNavigationView
android:id="@+id/navigation"
...
app:itemTextAppearanceActive="@style/navTextActive"
app:itemTextAppearanceInactive="@style/navTextInactive"/>
在styles.xml上:
<style name="navTextInactive">
<item name="android:textSize">11sp</item>
</style>
<style name="navTextActive">
<item name="android:textSize">12sp</item>
</style>
结果:
希望它可以帮助任何人!