com.android.support:design:24.1.0在导航栏中无法正确显示

我已将我的依赖项更新为以下内容:

com.android.support:design:24.0.0 – > com.android.support:design:24.1.0
com.android.support:appcompat-v7:24.0.0 – > com.android.support:appcompat-v7:24.1.0

我还更新了版本24.0.1的构建工具.

然而,在那之后,我的导航抽屉看起来不太好,你可以在这里看到:

使用旧版本,它看起来像这样:

你知道这个错误是什么,或者它是新标准吗?

感谢您的每一个回复.

最佳答案
这似乎是新的Android支持设计库中的一个错误,在AOSP问题跟踪器中检查this thread,如上所述,检查项目背景有一个错误 – 它使用colorPrimaryDark.

直到它被修复我发现可能是丑陋的,可能在将来无关紧要,但简单的解决方法 – NavigationView使用colorPrimaryDark突出显示项目背景,所以我们可以覆盖其android:主题改变colorPrimaryDark到我们需要的那个,在我们的情况是灰色的.

因此,首先在styles.xml中添加一个新样式:

<style name="NavigationViewGraySelectorTheme" parent="AppTheme">
    <!-- Extract this color to colors.xml -->
    <item name="colorPrimaryDark">#ddd</item>
</style>

然后只需在NavigationView小部件中使用它:

<android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    android:theme="@style/NavigationViewGraySelectorTheme"
    app:headerLayout="@layout/nav_header_main"
    app:itemIconTint="@color/nav_view_icon_color"
    app:itemTextColor="@color/nav_view_text_color"
    app:menu="@menu/activity_main_drawer"/>

更新:

正如Chris Banes在AOSP issue thread中提到的那样,该问题将通过24.1.1版本的支持库版本得到修复.

转载注明原文:com.android.support:design:24.1.0在导航栏中无法正确显示 - 代码日志