2016-04-11 8 views
0

私はツールバーウィジェットを使用する方法を学んでいます。 developer.android.comのガイドに従いながら
、私はこれは"?attr/colorPrimary"の値

android:background="?attr/colorPrimary" 

私はの定義に行く "?のattr/colorPrimary"、私は私が知ることができますどのように

<attr format="color" name="colorPrimary"/> 

を見つける見つけますの値は "?のattr/colorPrimary"

+0

** colors.xmlに値が見つかります** – camelCaseCoder

答えて

2
  • オープンstyle.xmlこの

    <!-- Base application theme. --> 
    <style name="AppTheme" parent="Base.Theme.DesignDemo"> 
    
    </style> 
    
    <style name="Base.Theme.DesignDemo" parent="Theme.AppCompat.Light.NoActionBar"> 
        <item name="colorPrimary">@color/colorPrimary</item> 
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
        <item name="colorAccent">@color/colorAccent</item> 
        <item name="android:windowBackground">@color/window_background</item> 
        <item name="colorControlNormal">@android:color/darker_gray</item> 
        <item name="colorControlActivated">@color/colorPrimary</item> 
    
        <item name="windowActionModeOverlay">true</item> 
        <item name="windowActionBarOverlay">true</item> 
        <item name="android:windowActionBarOverlay">true</item> 
        <item name="windowActionBar">false</item> 
    
        <item name="windowNoTitle">true</item> 
        <item name="android:windowDisablePreview">true</item> 
        <item name="android:typeface">monospace</item> 
        <item name="android:popupMenuStyle">@style/PopupMenu</item> 
    </style> 
    
  • colorPrimaryようなアプリケーションのテーマのためのコードは、color.xmlで定義されて

  • そう?ATTR/colorPrimary値は色@に等しいです/ colorPrimary
0

あなたはツールバーで任意の色を適用することができます。

以下
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:orientation="vertical"> 

<android.support.v7.widget.Toolbar 

    android:id="@+id/toolbar_common" 
    style="@style/Toolbar" 
    android:layout_height="?attr/actionBarSize" 
    app:contentInsetStart="0dp"> 


    <com.peopleshopapp.custom_control.GothamBoldTextview 
     android:id="@+id/tv_header" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="start" 
     android:layout_marginLeft="15dp" 
     android:drawableLeft="@drawable/circled_logo_top" 
     android:drawablePadding="10dp" 
     android:textColor="@color/white" 
     android:textSize="@dimen/font_size_18" 
     android:textStyle="bold" /> 

    <ImageView 
     android:id="@+id/iv_options" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="end" 
     android:layout_marginRight="10dp" 
     android:padding="10dp" 
     android:src="@drawable/category_icon" 
     android:visibility="gone" /> 

</android.support.v7.widget.Toolbar> 

ポスト値

<style name="Toolbar"> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:layout_width">match_parent</item> 
    <item name="android:minHeight">?attr/actionBarSize</item> 
    <item name="android:windowNoTitle">true</item> 
    <item name="android:background">@color/colorPrimary</item> 
</style> 
0

あなたstyle.xmlで以下のようにtoolbar.xmlのようなアンドロイドの "のattr/colorPrimary?": "?のattr/colorPrimary" 背景= "?attr/*"の構文です。ここに *。すなわち、「colorPrimaryは、現在のアプリケーションテーマからアクセスされる。

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
</style> 

colorPrimary属性のColors.xmlで定義されている色は、ツールバーに適用されます。