android - collapsing - layout collapsemode parallax
Nuevo error de Android Design Library con AppBarLayout y Toolbar (5)
Estoy usando la nueva biblioteca de diseño de Android basada en este ejemplo chrisbanes/cheesesquare en github y here
He ejecutado el ejemplo y estoy teniendo problemas con la barra de herramientas dentro de CheeseDetailActivity. La barra de herramientas no se muestra como debería. Echa un vistazo a las imágenes a continuación:
En la primera imagen, puede ver que la barra de herramientas no se muestra correctamente.
En la segunda imagen, puede ver que la barra de herramientas se muestra correctamente, pero la barra de notificaciones es blanca. Esto sucede porque eliminé de actiivty_detail.xml android:fitsSystemWindows="true"
de android.support.design.widget.CoordinatorLayout
Creo que fitsSystemWindows
debería ser cierto y el problema está relacionado con android.support.design.widget.AppBarLayout
pero no tengo idea de cómo puedo solucionar este problema. Intenté con marginTop
con la misma altura que notificationBar
pero no funcionó.
Cualquier sugerencia es apreciada :)
Esta es una parte de activity_detail.xml
:
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="@dimen/detail_backdrop_height"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
android:fitsSystemWindows="true">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginStart="48dp"
app:expandedTitleMarginEnd="64dp">
<ImageView
android:id="@+id/backdrop"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:fitsSystemWindows="true"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
Aquí hay una solución de trabajo para API 21:
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP) {
marginResult = 0;
int resourceId = getResources().getIdentifier(getString(R.string.identifier_status_bar_height), getString(R.string.identifier_dimen), getString(R.string.identifier_android));
if (resourceId > 0) {
marginResult = getResources().getDimensionPixelSize(resourceId)*2;
}
CollapsingToolbarLayout.LayoutParams params = (CollapsingToolbarLayout.LayoutParams) mToolbar.getLayoutParams();
params.topMargin -= marginResult;
mToolbar.setLayoutParams(params);}
Cambie su biblioteca de diseño con el archivo de nueva versión build.gradle en la carpeta de la aplicación como:
compile ''com.android.support:design:22.2.1''
Como actualizado en +AndroidDevelopers
Obtuve resultados como:
Te ayudará.
Gracias :)
Parece que esto es un error en com.android.support:design:22.2.0
. Será arreglado, está marcado como versión futura. Así que esperemos que sea pronto. Enlaces con problemas: https://code.google.com/p/android/issues/detail?id=175240 y https://code.google.com/p/android/issues/detail?id=175069
Tuve el mismo problema, mi barra de herramientas se mostraba mal en el nivel de la API superior a 21. Estaba usando android.support.v7.widget.Toolbar como supportActionBar () y el contenido a continuación está fragmentado, ver imágenes: en el inicio de la aplicación, la barra de herramientas está mostrando mal y cuando colapse android.support.design.widget.CollapsingToolbarLayout, la imagen no se oculta por completo
Resolví esto cuando agregué el atributo android: fitsSystemWindows = "true" al elemento raíz de vista donde se encuentra la barra de herramientas.
Ahora: la y la imagen se oculta por completo
tuve el mismo problema puesto en estilo con windowActionBar y windowNoTitle y decidí mi problema.
<style name="AppTheme.base" parent="Base.Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>