2017-08-17 69 views
0

我試圖改變動作條的顏色在我的「AppBar佈局」程序,通過這個代碼:改變「動作條」色不給正確的顏色

toolbar.setBackgroundColor(R.color.hidden_bars); //#464445 

但每次我用不同顏色的結束,在colorPrimary(#48bee6)

這裏更暗的版本是我的xml:

<android.support.design.widget.AppBarLayout 
    android:id="@+id/id_appbar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
     app:layout_scrollFlags="enterAlwaysCollapsed" /> 

    <android.support.design.widget.TabLayout 
     android:id="@+id/tabLayout" 
     style="@style/WenoTabLayout" 
     android:layout_width="match_parent" 
     android:layout_height="@dimen/tab_bar_height" 
     android:layout_marginTop="1dp" 
     android:background="@color/white" 
     app:tabGravity="fill" 
     app:tabMode="fixed" /> 

</android.support.design.widget.AppBarLayout> 
+0

check colorPrimary和colorPrimaryDark在您的應用程序主題將出現在style.xml – Reena

回答

1

這是setBackgroundColor(int)一個普遍的誤解。傳遞到setBackgroundColor的int值應該是顏色代碼而不是顏色資源ID。您應該首先通過id獲取顏色代碼。

// Use this instead of context if you are in activity 
int color = ContextCompat.getColor(context, R.color.your_color); 
toolbar.setBackgroundColor(color); 
+0

非常感謝,真的很有用 – Abuzaid