BottomNavigationView看起来很糟糕

时间:2018-01-01 13:12:53

标签: android android-theme android-bottomnav android-bottom-nav-view

我正在使用android支持库BottomNavigationView,它在某些版本的android中看起来非常糟糕。

这是我的代码:

<android.support.design.widget.BottomNavigationView
    android:id="@+id/navigation"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:background="#fff"
    app:theme="@style/mydrawer"
    app:itemIconTint="@drawable/selector"
    app:itemTextColor="@drawable/selector"
    app:menu="@menu/bottom_navigation_items" />

in styles : 
 <style name="mydrawer">
        <item name="android:textSize">14sp</item>
    </style>

在我的Android 6手机中看起来不错,但在大多数手机上看起来都很糟糕,如下:

enter image description here

如你所见,文字大小很大

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

您为所有设备指定一个文字大小值:

<FlatList
   ref={ref => this.flatList = ref}
   onContentSizeChange={() => this.flatList.scrollToEnd({animated: true})}
   onLayout={() => this.flatList.scrollToEnd({animated: true})}
   ...
/>

而不是14sp,您应该指定维度值

 <style name="mydrawer">
     <item name="android:textSize">14sp</item>
 </style>

为不同的屏幕尺寸创建dimens.xml文件。您应该为每个屏幕大小创建dimens.xml文件:

  • 正常
  • XLARGE
  • 有更多这些,但这3个是最常见的。

&#13;
&#13;
 <style name="mydrawer">
     <item name="android:textSize">@dimen/bottom_bar_item_text_size</item>
 </style>
&#13;
&#13;
&#13;

您的dimens.xml文件将如下所示:

enter image description here

希望有所帮助

答案 1 :(得分:1)

您可以使用底部导航ViewEx进行更多自定义和更好的外观,使用方法类似于普通视图

check out the github