Android Material Design – Как изменить цвет фона панели инструментов после CollapsingToolbarLayout рухнул

После того, как пользователь прокручивает экран вниз, изображение в CollapsingToolbarLayout исчезает и остается на панели инструментов с помощью кнопки «Назад», заголовка содержимого и настроек. Я хочу знать, как изменить цвет фона этой панели инструментов только тогда, когда он находится в состоянии «свалился».

Действие, которое я имею в виду, похоже на это, когда цвет фона панели инструментов изменяется на зеленый:

Введите описание изображения здесь

Ниже CollapsingToolbarLayout У меня есть NestedScrollView с CardViews

Solutions Collecting From Web of "Android Material Design – Как изменить цвет фона панели инструментов после CollapsingToolbarLayout рухнул"

Я думаю, что вы после app:contentScrim .

 <android.support.design.widget.CollapsingToolbarLayout ... app:contentScrim="?attr/colorPrimary"> <!-- Toolbar and ImageView here --> </android.support.design.widget.CollapsingToolbarLayout> 

Сначала удалите

 app:contentScrim="?attr/colorPrimary"> 

От CollapsingToolbarLayout

Добавить библиотеку

 compile 'com.android.support:palette-v7:23.2.1' 

И добавьте ниже код в java-код

  Bitmap bitmap = BitmapFactory.decodeResource(getApplicationContext().getResources(), R.drawable.ny); Palette.generateAsync(bitmap, new Palette.PaletteAsyncListener() { @Override public void onGenerated(Palette palette) { Palette.Swatch vibrant = palette.getVibrantSwatch(); int mutedColor = palette.getVibrantSwatch().getRgb(); if (vibrant != null) { // If we have a vibrant color // update the title TextView collapseToolbar.setBackgroundColor(mutedColor); // mutedColor = palette.getMutedColor(R.attr.colorPrimary); collapseToolbar.setStatusBarScrimColor(palette.getDarkMutedColor(mutedColor)); collapseToolbar.setContentScrimColor(palette.getMutedColor(mutedColor)); } } }); 

Просто используйте CollapsingToolbarLayout XML-атрибут contentScrim чтобы установить цвет фона Toolbar когда он находится в collapsed режиме.

app:contentScrim="YOUR_TOOLBAR_COLOR"

Вот пример:

 <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:id="@+id/img_group_photo" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" android:scaleType="centerCrop" app:layout_collapseMode="parallax" /> <android.support.v7.widget.Toolbar android:id="@+id/anim_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> </android.support.design.widget.CollapsingToolbarLayout> 

Надеюсь, это поможет ~