por - Expandir/contraer CardView con un clic o deslizar gesto(Android)?
navigation gestures apk (1)
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:orientation="vertical"
android:animateLayoutChanges="true"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
//here put the view which is always visible
<LinearLayout
android:layout_width="match_parent"
android:visibilty="gone"
android:id="@+id/expandableLayout"
android:layout_height="wrap_content">
//here put which will collapse and expand
</LinearLayout>
</android.support.v7.widget.CardView>
tomar un boolean isexpanded en tu clase de objeto de arraylist
if (listobj.isexpanded)
{
holder.expandableLayout.setVisibility(View.VISIBLE);
}
else {
holder.expandableLayout.setVisibility(View.GONE);
}
holder.cardView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (listobj.isexpanded)
{
holder.expandableLayout.setVisibility(View.GONE);
listobj.isexpanded=false;
notifyItemChanged(position);
}
else {
holder.expandableLayout.setVisibility(View.VISIBLE);
listobj.isexpanded=true;
notifyItemChanged(position);
}
}
});
intenta algo así
Estoy buscando una solución a esto que me permita ampliar una tarjeta de visita para ver más información y luego colapsarla fácilmente. Google Keep tiene ejemplos de cartas como esta. Alguien sabe cómo lo hacen? ¿Crearía 2 versiones de mi cardview (una contraída y otra expandida) y luego usaría una clase Animator junto con métodos de gestos para hacer la transición entre las dos vistas? Estoy usando Recyclerview para guardar mis tarjetas de visita.
Encontré esto si es relevante: http://developer.android.com/training/animation/layout.html