android - com.android.support :design:24. 1.0 没有在导航栏中正确显示

标签 android gradle build android-support-library

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

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 支持设计库中的一个错误,检查 this thread在 AOSP 问题跟踪器中,如前所述,检查项背景存在一个错误 - 它使用 colorPrimaryDark

在它被修复之前,我发现它可能很难看,而且将来可能不相关,但简单的解决方法 - NavigationView 使用 colorPrimaryDark 来突出显示项目背景,因此我们可以通过更改 colorPrimaryDark 覆盖它的 android:theme 到我们需要的那个,在我们的例子中它是灰色的。

因此,首先向您的 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 版本的支持库版本中得到修复。

关于android - com.android.support :design:24. 1.0 没有在导航栏中正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38464563/

相关文章:

android - 我是否需要在其 onDestroy() 事件时调用 removeObserver 的生命周期?

ios - 如何修复 ibtool 因 Main.storyboard 错误 : shouldBeArchived unrecognized 而失败

Linux 配置/制作,--前缀?

通过 Gradle 添加属性时 Android BuildConfig 问题

android - 在给予Firebase依赖版本11.2.0后,AppCompat提供错误

android - 将 header 添加到 PreferenceActivity

android - 如何在 Android 中水平/垂直滚动全景图像?

Android RadioButton 方向

gradle - 依赖 JVM 中的 Kotlin Multiplatform JS 模块

build - 从任何位置执行 gradle 构建任务