Yeni Araç Çubuğu için başlık rengini nasıl belirlersiniz?


119

Yeni v7 Araç Çubuğunu kullanıyorum ve hayatım boyunca başlığın rengini nasıl değiştireceğimi bilemiyorum. Araç Çubuğunun @ stilini styles.xml dosyasında belirtilen bir stile ayarladım ve textColor ile bir titleTextStyle uyguladım. Bir şey mi kaçırıyorum? Lollipop için kod yazıyorum ancak şu anda bir Kitkat cihazında test ediyorum.

styles.xml

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="@style/Theme.AppCompat.Light">
        <item name="android:windowNoTitle">true</item>
        <item name="windowActionBar">false</item>
    </style>

    <style name="ActionBar" parent="Theme.AppCompat">
        <item name="android:background">@color/actionbar_background</item>
        <item name="android:titleTextStyle">@style/ActionBar.TitleTextStyle</item>
    </style>

    <style name="ActionBar.TitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
        <item name="android:textColor">@color/actionbar_title_text</item>
    </style>

</resources>

actionbar.xml:

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar_actionbar"
    android:layout_width="match_parent"
    android:layout_height="?actionBarSize"
    style="@style/ActionBar"/>

Yanıtlar:


241

Seçenek 1) Hızlı ve kolay yol (yalnızca Araç Çubuğu)

Appcompat-v7-r23'ten bu yana, aşağıdaki öznitelikleri doğrudan sizin Toolbarveya stilinizde kullanabilirsiniz:

app:titleTextColor="@color/primary_text"
app:subtitleTextColor="@color/secondary_text"

Minimum SDK'nız 23 ise ve yerel kullanıyorsanız Toolbarad alanı önekini olarak değiştirin android.

Java'da aşağıdaki yöntemleri kullanabilirsiniz:

toolbar.setTitleTextColor(Color.WHITE);
toolbar.setSubtitleTextColor(Color.WHITE);

Bu yöntemler bir renk kaynağı kimliği değil bir renk int alır!

Seçenek 2) Araç Çubuğu stilini ve tema niteliklerini geçersiz kılın

düzen / xxx.xml

<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:minHeight="?attr/actionBarSize"
    android:theme="@style/ThemeOverlay.MyApp.ActionBar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
    style="@style/Widget.MyApp.Toolbar.Solid"/>

değerler / styles.xml

<style name="Widget.MyApp.Toolbar.Solid" parent="Widget.AppCompat.ActionBar">
    <item name="android:background">@color/actionbar_color</item>
    <item name="android:elevation" tools:ignore="NewApi">4dp</item>
    <item name="titleTextAppearance">...</item>
</style>

<style name="ThemeOverlay.MyApp.ActionBar" parent="ThemeOverlay.AppCompat.ActionBar">
    <!-- Parent theme sets colorControlNormal to textColorPrimary. -->
    <item name="android:textColorPrimary">@color/actionbar_title_text</item>
</style>

Yardım! Simgelerim de renk değiştirdi!

@PeterKnut, bunun taşma düğmesi, gezinme çekmecesi düğmesi ve geri düğmesinin rengini etkilediğini bildirdi. Ayrıca metin rengini de değiştirir SearchView.

İkon renkleri ile ilgili: colorControlNormaldevralır dan

  • android:textColorPrimary koyu temalar için (siyah üzerine beyaz)
  • android:textColorSecondary hafif temalar için (beyaz üzerine siyah)

Bunu işlem çubuğunun temasına uygularsanız , simge rengini özelleştirebilirsiniz.

<item name="colorControlNormal">#de000000</item>

Appcompat-v7'den r23'e kadar bir hata vardı ve bu da yerel emsali şu şekilde geçersiz kılmanızı gerektirdi:

<item name="android:colorControlNormal" tools:ignore="NewApi">?colorControlNormal</item>

Yardım! SearchView bir karmaşa!

Not: Bu bölüm muhtemelen eski.

Herhangi bir nedenle appcompat-v7 ile birlikte verilenden farklı bir geri ok (görsel, teknik olarak değil) kullanan arama widget'ını kullandığınız için, bunu uygulamanın temasında manuel olarak ayarlamanız gerekir . Destek kitaplığının çekilebilir öğeleri doğru şekilde renklendirilir. Aksi takdirde her zaman beyaz olurdu.

<item name="homeAsUpIndicator">@drawable/abc_ic_ab_back_mtrl_am_alpha</item>

Arama görünümü metnine gelince ... kolay bir yol yok. Kaynağını araştırdıktan sonra metin görünümüne geçmenin bir yolunu buldum. Bunu test etmedim, bu yüzden işe yaramadıysa lütfen yorumlarda bana bildirin.

SearchView sv = ...; // get your search view instance in onCreateOptionsMenu
// prefix identifier with "android:" if you're using native SearchView
TextView tv = sv.findViewById(getResources().getIdentifier("id/search_src_text", null, null));
tv.setTextColor(Color.GREEN); // and of course specify your own color

Bonus: ActionBar stilini ve tema niteliklerini geçersiz kılın

Varsayılan bir eylem appcompat-v7 eylem çubuğu için uygun stil şu şekilde görünür:

<!-- ActionBar vs Toolbar. -->
<style name="Widget.MyApp.ActionBar.Solid" parent="Widget.AppCompat.ActionBar.Solid">
    <item name="background">@color/actionbar_color</item> <!-- No prefix. -->
    <item name="elevation">4dp</item> <!-- No prefix. -->
    <item name="titleTextStyle">...</item> <!-- Style vs appearance. -->
</style>

<style name="Theme.MyApp" parent="Theme.AppCompat">
    <item name="actionBarStyle">@style/Widget.MyApp.ActionBar.Solid</item>
    <item name="actionBarTheme">@style/ThemeOverlay.MyApp.ActionBar</item>
    <item name="actionBarPopupTheme">@style/ThemeOverlay.AppCompat.Light</item>
</style>

2
Bu çözümün çeşitli yan etkileri vardır. textColorPrimary, gezinme çekmecesi düğmesine ve arama widget'ındaki metne de uygulanır. Ayrıca, geri düğmesinin rengi beyaza ayarlandı (nedenini sorma).
Peter Knut

@PeterKnut O zamanlar önerilen çözümün ne kadar eksik olduğunu fark etmemiştim. Düzenlemeden sonra - bu şekilde kullanıyorum ve işe yarıyor. Bununla birlikte, lütfen arama görünümü metin renk parçasını inceleyin.
Eugen Pechanec

Şimdi neredeyse doğru çalışıyor. İki not: Arama widget'ında metin kazmak iyi bir fikir değildir, kimliği gelecekte değiştirilebilir. Widget.MyApp.ActionBar'daki arka plan özelliği, düğmeler ve araç ipuçlarındaki arka planı da etkiler. Arka plan doğrudan <android.support.v7.widget.Toolbar> içinde ayarlanmalıdır.
Peter Knut

Aynı fikirdeyim, bu iyi bir fikir değil, en azından oraya bir boş kontrol eklerim (ancak bu kimliğin değişme olasılığı nedir). Arka planla ilgili olarak: Haklı değilsiniz, bunu araç çubuğu öğesine bir stil olarak eklerseniz , arka plan yalnızca araç çubuğu küçük aracına uygulanır. Arka planı içinde tanımlar ve ThemeOverlaybir tema olarak kullanırsanız , her alt öğenin arka planı da renklenir.
Eugen Pechanec

Tamam, stil vs tema konusunda haklısınız. Benim hatam.
Peter Knut

40

Arama widget'ında metnin rengini değil, yalnızca başlığın rengini değiştirmeniz gerekiyorsa benim çözümüm.

düzen / toolbar.xml

<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/toolbar"
    android:background="@color/toolbar_bg"
    app:theme="@style/AppTheme.Toolbar"
    app:titleTextAppearance="@style/AppTheme.Toolbar.Title"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:minHeight="?attr/actionBarSize"/>

değerler / themes.xml

<resources>
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="windowActionBar">false</item>
    </style>

    <style name="AppTheme.Toolbar" parent="ThemeOverlay.AppCompat.ActionBar">
        <!-- Customize color of navigation drawer icon and back arrow --> 
        <item name="colorControlNormal">@color/toolbar_icon</item>
    </style>

    <style name="AppTheme.Toolbar.Title" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
        <!-- Set proper title size -->
        <item name="android:textSize">@dimen/abc_text_size_title_material_toolbar</item>
        <!-- Set title color -->
        <item name="android:textColor">@color/toolbar_title</item>
    </style>
</resources>

Benzer şekilde, subtitleTextAppearance'ı da ayarlayabilirsiniz.


Araç çubuğunun bir Parça içinde mi yoksa bir Etkinlik içinde mi olduğuna bağlı olarak başlığın renginin farklı olacağı bir sorun yaşıyordum. Rengi geçersiz kılmak için bu numarayı kullanmak bulabildiğim tek düzeltmeydi (rengi değiştirmenin diğer yolları işe yaramadı). Umarım bu daha fazla insana yardımcı olur. Teşekkürler!
Pedro Loureiro

3
@Peter Knut, bunun yalnızca API21 ve üstü için çalıştığını belirtmeniz gerekiyor, bu da onu işe yaramaz hale getiriyor
DoruChidean

@DoruChidean, Jelly Bean (API 16) ile test edildi: bir cazibe gibi çalışıyor!
crubio

Aktivite temasını belirlemek mümkün değil. IE, <activity android: name = ". SomeActivity" android: theme = "@ style /
AppTheme.Toolbar

11

API 23 ve üzerini destekliyorsanız , Araç Çubuğunun başlık rengini ayarlamak için artık titleTextColor özelliğini kullanabilirsiniz .

düzen / toolbar.xml

<android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:titleTextColor="@color/colorPrimary"
        />

MyActivity.java

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar)
toolbar.setTitleTextColor(Color.WHITE);

Bunlar, appcompat kitaplığı tarafından da destekleniyor gibi görünüyor.
Eugen Pechanec

10

Ayar app:titleTextColorbenim üzerinde android.support.v7.widget.Toolbarolan çok Android 4.4 ve 6.0 benim için işler com.android.support:appcompat-v7:23.1.0:

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:minHeight="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    app:titleTextColor="@android:color/white" />

4
Ad alanının android değil, uygulama olduğuna dikkat edin.
Tommie

sadece şu satır app eklemek: titleTextColor = "@ android: color / white" benim için kitkat ve üzeri için çalıştı. Teşekkürler @hunyadym
Ghanshyam Nayma

9

Bu beni bir süredir sinirlendiriyordu ve verilen cevapların hiçbirini beğenmedim, bu yüzden nasıl çalıştığını görmek için kaynağa baktım.

FractalWrench doğru yoldur, ancak API 23'ün altında kullanılabilir ve kendi araç çubuğunda ayarlanması gerekmez.

Başkalarının da söylediği gibi, araç çubuğunda bir stil ayarlayabilirsiniz

app:theme="@style/ActionBar"

ve bu stilde başlık metni rengini ayarlayabilirsiniz.

<item name="titleTextColor">#00f</item>

API 23 öncesi veya 23+ için

<item name="android:titleTextColor">your colour</item>

Tam xml

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_height="?attr/actionBarSize"
    android:layout_width="match_parent"
    app:theme="@style/ActionBar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Dark"/>


<style name="ActionBar" parent="@style/ThemeOverlay.AppCompat.ActionBar">
    <item name="android:titleTextStyle">@style/ActionBarTextStyle</item>
    <item name="titleTextColor">your colour</item>
    <item name="android:background">#ff9900</item>
</style>

Bir araç çubuğu için ayarlanabilen tüm özellikler burada

<declare-styleable name="Toolbar">
    <attr name="titleTextAppearance" format="reference" />
    <attr name="subtitleTextAppearance" format="reference" />
    <attr name="title" />
    <attr name="subtitle" />
    <attr name="gravity" />
    <attr name="titleMargins" format="dimension" />
    <attr name="titleMarginStart" format="dimension" />
    <attr name="titleMarginEnd" format="dimension" />
    <attr name="titleMarginTop" format="dimension" />
    <attr name="titleMarginBottom" format="dimension" />
    <attr name="contentInsetStart" />
    <attr name="contentInsetEnd" />
    <attr name="contentInsetLeft" />
    <attr name="contentInsetRight" />
    <attr name="maxButtonHeight" format="dimension" />
    <attr name="navigationButtonStyle" format="reference" />
    <attr name="buttonGravity">
        <!-- Push object to the top of its container, not changing its size. -->
        <flag name="top" value="0x30" />
        <!-- Push object to the bottom of its container, not changing its size. -->
        <flag name="bottom" value="0x50" />
    </attr>
    <!-- Icon drawable to use for the collapse button. -->
    <attr name="collapseIcon" format="reference" />
    <!-- Text to set as the content description for the collapse button. -->
    <attr name="collapseContentDescription" format="string" />
    <!-- Reference to a theme that should be used to inflate popups
         shown by widgets in the toolbar. -->
    <attr name="popupTheme" format="reference" />
    <!-- Icon drawable to use for the navigation button located at
         the start of the toolbar. -->
    <attr name="navigationIcon" format="reference" />
    <!-- Text to set as the content description for the navigation button
         located at the start of the toolbar. -->
    <attr name="navigationContentDescription" format="string" />
    <!-- Drawable to set as the logo that appears at the starting side of
         the Toolbar, just after the navigation button. -->
    <attr name="logo" />
    <!-- A content description string to describe the appearance of the
         associated logo image. -->
    <attr name="logoDescription" format="string" />
    <!-- A color to apply to the title string. -->
    <attr name="titleTextColor" format="color" />
    <!-- A color to apply to the subtitle string. -->
    <attr name="subtitleTextColor" format="color" />
</declare-styleable>

4

İn Toolbarile başlık rengini değiştirmenin en basit yoluCollapsingToolbarLayout .

Aşağıdaki stilleri ekleyin CollapsingToolbarLayout

<android.support.design.widget.CollapsingToolbarLayout
        app:collapsedTitleTextAppearance="@style/CollapsedAppBar"
        app:expandedTitleTextAppearance="@style/ExpandedAppBar">

styles.xml

<style name="ExpandedAppBar" parent="@android:style/TextAppearance">
        <item name="android:textSize">24sp</item>
        <item name="android:textColor">@android:color/black</item>
        <item name="android:textAppearance">@style/TextAppearance.Lato.Bold</item>
    </style>

    <style name="CollapsedAppBar" parent="@android:style/TextAppearance">
        <item name="android:textColor">@android:color/black</item>
        <item name="android:textAppearance">@style/TextAppearance.Lato.Bold</item>
    </style>

3

Appcompat-v7 uygulamasını kullanabiliyorsanız : titleTextColor = "# fff">

<android.support.v7.widget.Toolbar  
        android:id="@+id/toolbar"  
        android:layout_width="match_parent"  
        android:layout_height="wrap_content"  
        android:background="@color/colorPrimary"   
        android:visibility="gone"   
        app:titleTextColor="#fff">   
    </android.support.v7.widget.Toolbar>   

2

Bu benim için çalıştı

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?attr/colorPrimary"
    android:fitsSystemWindows="true"
    android:minHeight="?attr/actionBarSize"
    app:navigationIcon="@drawable/ic_back"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
    app:subtitleTextColor="@color/white"
    app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    app:title="This week stats"
    app:titleTextColor="@color/white">


    <ImageView
        android:id="@+id/submitEditNote"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_gravity="right"
        android:layout_marginRight="10dp"
        android:src="@android:drawable/ic_menu_manage" />
</android.support.v7.widget.Toolbar>

2

Xml ... toolbar.xml dosyanızda bir araç çubuğu oluşturun:

<android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"

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

Ardından, toolbar.xml dosyanıza şunları ekleyin:

app:titleTextColor="@color/colorText"
app:title="@string/app_name">

Remeber @ color / colorText, sadece colorText adlı renk özniteliğine ve sizin renginize sahip color.xml dosyanızdır.Bu, renginizi toolbar.xml dosyanıza kodlamak yerine dizelerinizi çağırmanın en iyi yoludur. Metninizi değiştirmek için başka seçenekleriniz de var, örneğin: textAppearance ... etc ... sadece app: text yazın ... ve intelisense size android stüdyosunda seçenekler sunacaktır.

son araç çubuğunuz şöyle görünmelidir:

 <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:layout_weight="1"
        android:background="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|enterAlways"
        app:popupTheme="@style/Theme.AppCompat"
       app:subtitleTextAppearance="@drawable/icon"
        app:title="@string/app_name">
    </android.support.v7.widget.Toolbar>

Not: Bu araç çubuğu, activity_main.xml.Easy Peasie içinde olmalıdır.

Diğer bir seçenek de hepsini sınıfınızda yapmaktır:

Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
toolbar.setTitleTextColor(Color.WHITE);

İyi şanslar


Hey, teşekkürler bu işe yarıyor. Ama bu niteliği sadece stillerde nasıl kullanacağınızı biliyor musunuz? Xml'yi daha karmaşık hale getirmek yerine. Teşekkürler :)
Greggz

Açıkçası, @color'unuz doğrudan string kaynağınızdan gelir. xml'niz renklerinizi sabit kodlamadan daha temizdir.
RileyManda

1

Rengi değiştirmek için

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:background="?attr/colorPrimary"

/>

Toolbar myToolbar = (Toolbar) findViewById(R.id.toolbar);
        myToolbar.setTitleTextColor(ContextCompat.getColor(getApplicationContext(), R.color.Auth_Background));
        setSupportActionBar(myToolbar);

1

Bugün bununla birkaç saat uğraştım çünkü tüm bu cevaplar biraz güncel değil şimdi MDC ve yeni tema yetenekleri ile nasıl geçersiz kılacağımı göremedim app:titleTextColor uygulama genişliğini bir stil olarak .

Cevap, titleTextColorstyles.xml'de bulunan, miras alınan bir şeyi geçersiz kılıyor olmanızdır Widget.AppCompat.Toolbar. Bugün en iyi seçeneğin şu olması gerektiğini düşünüyorum Widget.MaterialComponents.Toolbar:

<style name="Widget.LL.Toolbar" parent="@style/Widget.MaterialComponents.Toolbar">
     <item name="titleTextAppearance">@style/TextAppearance.LL.Toolbar</item>
     <item name="titleTextColor">@color/white</item>
     <item name="android:background">?attr/colorSecondary</item>
</style>

<style name="TextAppearance.LL.Toolbar" parent="@style/TextAppearance.Widget.AppCompat.Toolbar.Title">
     <item name="android:textStyle">bold</item>
</style>

Ve uygulama temanızda toolbarStyle'ı belirtin:

<item name="toolbarStyle">@style/Widget.LL.Toolbar</item>

Artık xml'yi, araç çubuğunu değiştirmeden bırakabilirsiniz. Uzun bir süre android:textColor, araç çubuğundaki başlık metni görünümünü değiştirmenin işe yaraması gerektiğini düşündüm , ancak nedense çalışmıyor.


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

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:titleTextColor="@color/white"
    android:background="@color/green" />


0
public class MyToolbar extends android.support.v7.widget.Toolbar {

public MyToolbar(Context context, @Nullable AttributeSet attrs) {
    super(context, attrs);
}

@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
    super.onLayout(changed, l, t, r, b);
    AppCompatTextView textView = (AppCompatTextView) getChildAt(0);
    if (textView!=null) textView.setTextAppearance(getContext(), R.style.TitleStyle);
}

}

Veya MainActivity'den basit kullanım:

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbarMain);
setSupportActionBar(toolbar);
((AppCompatTextView) toolbar.getChildAt(0)).setTextAppearance(this, R.style.TitleStyle);

style.xml

<style name="TileStyle" parent="TextAppearance.AppCompat">
    <item name="android:textColor">@color/White</item>
    <item name="android:shadowColor">@color/Black</item>
    <item name="android:shadowDx">-1</item>
    <item name="android:shadowDy">1</item>
    <item name="android:shadowRadius">1</item>
</style>

Bu kod soruyu yanıtlasa da , nasıl çalıştığını ve ne zaman kullanılacağını açıklayan bir bağlam eklemek daha iyi olacaktır . Yalnızca kod yanıtları uzun vadede kullanışlı değildir.
Aditi Rawat

0

İle yap toolbar.setTitleTextAppearance(context, R.style.TitleTextStyle);

// bu, renk düzeninizi özelleştirebileceğiniz stildir

 <style name="TitleTextStyle" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title">
    <item name="android:fontFamily">@string/you_font_family</item>
    <item name="android:textStyle">normal</item>
    <item name="android:textAppearance">@style/you_text_style</item>
    <item name="android:textColor">#000000</item>
    <item name="android:textSize">20sp</item>
</style>

0

Çok basit, bu benim için çalıştı (başlık ve simge beyaz):

    <android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="56dp"
    android:background="@color/PrimaryColor"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
    android:elevation="4dp" />

0

Malzeme Bileşenleri Kitaplığı ile, app:titleTextColor niteliği .

In düzeni şey gibi kullanabilirsiniz:

<com.google.android.material.appbar.MaterialToolbar
    app:titleTextColor="@color/...."
    .../>

Ayrıca özel bir stil de kullanabilirsiniz :

<com.google.android.material.appbar.MaterialToolbar
     style="@style/MyToolbarStyle"
    .../>

ile ( Widget.MaterialComponents.Toolbar.Primarystili genişletme ):

  <style name="MyToolbarStyle" parent="Widget.MaterialComponents.Toolbar.Primary">
       <item name="titleTextColor">@color/....</item>
  </style>

veya ( Widget.MaterialComponents.Toolbarstili genişletme ):

  <style name="MyToolbarStyle" parent="Widget.MaterialComponents.Toolbar">
       <item name="titleTextColor">@color/....</item>
  </style>

görüntü açıklamasını buraya girin

Ayrıca , niteliği kullanarak ( stili kullanarak) stille tanımlanan rengi geçersiz kılabilirsiniz :android:themeWidget.MaterialComponents.Toolbar.Primary

    <com.google.android.material.appbar.MaterialToolbar
        style="@style/Widget.MaterialComponents.Toolbar.Primary"
        android:theme="@style/MyThemeOverlay_Toolbar"
        />

ile:

  <style name="MyThemeOverlay_Toolbar" parent="ThemeOverlay.MaterialComponents.Toolbar.Primary">
    <!-- This attributes is also used by navigation icon and overflow icon -->
    <item name="colorOnPrimary">@color/...</item>
  </style>

görüntü açıklamasını buraya girin

veya ( Widget.MaterialComponents.Toolbarstili kullanarak ):

    <com.google.android.material.appbar.MaterialToolbar
        style="@style/Widget.MaterialComponents.Toolbar"
        android:theme="@style/MyThemeOverlay_Toolbar2"

ile:

  <style name="MyThemeOverlay_Toolbar3" parent="ThemeOverlay.MaterialComponents.Toolbar.Primary">
    <!-- This attributes is used by title -->
    <item name="android:textColorPrimary">@color/white</item>

    <!-- This attributes is used by navigation icon and overflow icon -->
    <item name="colorOnPrimary">@color/secondaryColor</item>
  </style>
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.