【问题标题】:Google BottomNavigationView item title disappears after few rapid tab switchGoogle BottomNavigationView 项目标题在几次快速标签切换后消失
【发布时间】:2017-09-13 08:03:19
【问题描述】:

activity_main.xml:

 <android.support.design.widget.BottomNavigationView
    android:id="@+id/bottom_navigation"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:elevation="4dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintVertical_bias="1.0"
    />

bottom_bar.xml:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">

<item
    android:id="@+id/tab_addcard"
    android:enabled="true"
    android:title="@string/addcard"
    android:icon="@drawable/ic_tabicon_addcard"
    app:showAsAction="ifRoom|withText"/>
<item
    android:id="@+id/tab_approvals"
    android:enabled="true"
    android:title="@string/approvals"
    android:icon="@drawable/ic_tabicon_approvals"
    app:showAsAction="always|withText"/>
<item
    android:id="@+id/tab_mycard"
    android:enabled="true"
    android:title="@string/mycard"
    android:icon="@drawable/ic_tabicon_mycard"
    app:showAsAction="always|withText"/>

MainActivity.java:

BottomNavigationView bottombar;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    bottombar= (BottomNavigationView) findViewById(R.id.bottom_navigation);

    bottombar.inflateMenu(R.menu.bottom_bar);
}

我的问题是:在我完成从底部栏的初始化到在其中添加项目的所有内容之后。一旦我运行它并尝试在BottomNavigationView 的项目选项卡之间快速(非常快)切换,项目标题文本之间就会突然消失。有人可以建议我任何解决方案吗?

【问题讨论】:

    标签: java android xml bottomnavigationview


    【解决方案1】:

    似乎一个TextView 消失了,另一个在BottomNavigationView 项目点击上显示。看起来很迟钝...

    我必须在我的 BottomNavigationView 的 xml 布局中设置 app:labelVisibilityMode="selected"。它仅显示整个菜单的选定项目标题。就我而言,它看起来不错。 :)

    【讨论】:

    【解决方案2】:

    setOnNavigationItemSelectedListener 应该返回 false 而不是 true

    【讨论】:

    • 通过返回 false 它会禁用 BottomNavigationView 的动画,即它还会禁用 BottomNavigationView 的排斥效果。请建议我一些解决方案,它也可以克服这个问题??
    【解决方案3】:

    在我的情况下,我在其中一个片段中使用协调器布局,并且有 android:fitSystemWindows="true"

    将其更改为false.. 解决了我的问题。 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-10-02
      • 2015-01-24
      • 1970-01-01
      • 1970-01-01
      • 2017-07-11
      • 1970-01-01
      • 2021-08-18
      • 1970-01-01
      相关资源
      最近更新 更多