9

Ich bin auf der Suche nach einer Lösung für diese, die es mir ermöglichen, eine Cardview zu erweitern, um mehr Informationen zu sehen und dann einfach zu reduzieren. Google Keep hat Beispiele für solche Karten. Wer weiß, wie sie das machen? Würde ich zwei Versionen meiner cardview erstellen (eine ausgeblendete und eine erweiterte Ansicht) und dann eine Animator-Klasse verwenden, die mit Gestenmethoden gekoppelt ist, um zwischen den beiden Ansichten zu wechseln? Ich verwende eine Recyclerview, um meine Kartenansichten zu halten.CardView mit Klick- oder Wischgeste (Android) erweitern/reduzieren?

Das fand ich, wenn es überhaupt relevant ist: http://developer.android.com/training/animation/layout.html

+3

IsExpanded in Sie Arraylist Objektklasse

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); } } }); 

versuchen die Kartenansicht, der obere Teil, der immer angezeigt wird, und ein unterer Teil, der versteckt oder angezeigt wird, oder? Dann können Sie die Sichtbarkeit des unteren Teils jedes Mal ändern, wenn die Karte berührt wird (oder irgendein anderes Ereignis) und die Kartenansichtshöhe "wrap_content" erstellen. Wenn dies wie gewünscht funktioniert, können Sie dies leicht zu einer Animation machen, indem Sie '' und '' in einer XML-Datei in Ihrem 'anim'-Ordner verwenden. Ist das, wonach du verlangst? Wenn es dann ist, lass es mich wissen, ich werde den Code dafür veröffentlichen. – NecipAllef

Antwort

0
<?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> 

einen boolean nehmen some ähnliche Es gibt zwei Teile auf