簡體   English   中英

升級到AppCompat v21后,工具欄和狀態欄上的繪圖錯誤

[英]Drawing error on toolbar and statusbar after upgrade to AppCompat v21

我已將我的應用程序升級到AppCompat v21,以實現Material Design外觀。 我正在使用android.support.v7.widget.Toolbar而不是ActionBar。 升級后,我在狀態欄,工具欄和導航區域中遇到奇怪的繪圖錯誤(請參見屏幕截圖)。 其余的布局都很好。

該錯誤僅在某些活動啟動后的某些時候才會發生,並且實際上無法再現。 在運行Android 5.0.1的Nexus 5上出現此錯誤。

有誰知道這種現象的可能原因?

狀態欄和工具欄(藍色是所需的@color/colorPrimary ): 繪圖錯誤截圖1

內容看起來不錯。

導航: 繪圖錯誤截圖2

我的布局非常簡單,因此我不認為這是造成這種情況的原因,但是這里的代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar"
android:layout_height="wrap_content"
android:layout_width="match_parent" />

    <ListView
        android:id="@+id/list"
        android:headerDividersEnabled="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

    </ListView>
</LinearLayout>

這是我的工具欄樣式:

<style name="Theme.AppThemeBase.Toolbar.Dark" parent="Widget.AppCompat.Toolbar">
    <item name="android:background">@color/colorPrimary</item>
    <item name="android:navigationIcon">?attr/homeAsUpIndicator</item>
    <item name="navigationIcon">?attr/homeAsUpIndicator</item>
    <item name="android:elevation">0dp</item>
    <item name="elevation">0dp</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:minHeight">?attr/actionBarSize</item>
    <item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
    <item name="theme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
</style>

這是我的樣式文件:

<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">
    <item name="windowActionBar">false</item>   
    <item name="colorPrimary">@color/bg_blue</item>
    <item name="colorPrimaryDark">@color/dark_grey</item>
</style>

在上面您必須使用:

<item name="windowActionBar">false</item>

禁用默認操作欄!

還有工具欄小部件的布局:

<android.support.v7.widget.Toolbar 
   xmlns:android="http://schemas.android.com/apk/res/android"

   android:id="@+id/toolbar"
   android:minHeight="?attr/actionBarSize"
   android:background="?attr/colorPrimary"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"

/>

和顏色文件:

<resources>
   <color name="bg_blue">#1277c4</color>
   <color name="dark_grey">#666666</color>
</resources>

希望能有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM