BottomNavigationView Text Resize Animation基于使用的主题问题

问题描述 投票:2回答:1

我正在使用BottomNavigationView,但观察一个奇怪的问题。

当与主题"Theme.AppCompat.Light.DarkActionBar"一起使用时,文本和图标调整大小动画在单击时对每个项目都可以正常工作。

但是当与主题"Theme.MaterialComponents.Light.DarkActionBar"一起使用时,它无效,No Resize动画正在发生。

<com.google.android.material.bottomnavigation.BottomNavigationView
    android:id="@+id/bottomNav"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom"
    android:background="#212121"
    app:itemIconTint="@color/nav_item_color_state"
    app:itemTextColor="@color/nav_item_color_state"
    app:menu="@menu/bottom_menu_main"/>

nav_item_color_state.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/action_nav_feed"
        android:icon="@android:drawable/ic_input_add"
        android:checked="true"
        android:title="List"/>
    <item
        android:id="@+id/action_nav_info"
        android:icon="@android:drawable/ic_notification_overlay"
        android:title="Info"/>
    <item
        android:id="@+id/action_nav_profile"
        android:icon="@android:drawable/ic_delete"
        android:title="Profile"/>
</menu>

style.xml

<style name="AppTheme" parent="Theme.MaterialComponents.Light.DarkActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>
<!-- Theme.AppCompat.Light.DarkActionBar -->
android material-design bottomnavigationview
1个回答
2
投票

尝试使用属性app:itemTextAppearanceActiveapp:itemTextAppearanceInactive

<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottomNav"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="#212121"
app:itemIconTint="@color/nav_item_color_state"
app:itemTextAppearanceActive="@style/BottomNavigationView.Active"
app:itemTextAppearanceInactive="@style/BottomNavigationView"
app:itemTextColor="@color/nav_item_color_state"
app:menu="@menu/bottom_menu_main"/>

styles.xml

<style name="BottomNavigationView" 
   parent="@style/TextAppearance.AppCompat.Caption">
    <item name="android:textSize">10sp</item>
</style>

  <style name="BottomNavigationView.Active" 
  parent="@style/TextAppearance.AppCompat.Caption">
    <item name="android:textSize">15sp</item>
  </style>

没有必要为这个视图设置主题,这些样式将做的事情。

© www.soinside.com 2019 - 2024. All rights reserved.