2017-02-17 8 views
0

私は2枚のカードを持っています。この場合、最初のカードは後半のカードを隠す。最初のカードをクリックすると、最初のカードが前に表示され、2番目が後ろに表示され、2番目のカードをクリックすると、最初に後ろに表示されます。私は多くのリンクを検索しましたが、どのアニメーションがこれで使用されているのか分かりません。この画像では、白いカードをクリックすると茶色のカードが白いカードに置き換えられ、白は茶色に置き換えられます。これらのカードにアニメーションを実装する方法

ビューカードのクラス

public class ViewCard extends AppCompatActivity { 

CardView card1,card2; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_view_card); 
    card1 = (CardView)findViewById(R.id.card1); 
    card2 = (CardView)findViewById(R.id.card2); 
    card1.setBackgroundResource(R.drawable.cardtemplatefront1); 
    card2.setBackgroundResource(R.drawable.cardtemplatefront2); 

    card1.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      card1.bringToFront(); 

     } 
    }); 
    card2.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      card2.bringToFront(); 
     } 
    }); 
} 

}

レイアウト

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/activity_view_card" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" 
android:animateLayoutChanges="true" 
tools:context="com.android.bizecard.BizCard.ViewCard"> 

<include layout="@layout/header"></include> 

<FrameLayout 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 

    <android.support.v7.widget.CardView 
     android:id="@+id/card1" 
     android:layout_width="fill_parent" 
     android:layout_height="390px" 
     android:background="@drawable/cardtemplatefront1" /> 

    <android.support.v7.widget.CardView 
     android:id="@+id/card2" 
     android:layout_width="fill_parent" 
     android:layout_height="390px" 
     android:layout_marginTop="85dp" 
     android:background="@drawable/cardtemplatefront2" /> 
</FrameLayout> 

enter image description here

答えて

0

あなたのXMLコードを投稿してください、あなたがこのカードの親として相対的なレイアウトを持っているなら、このプロパティを使うことができます。カードのクリック

+0

cardView.bringToFront(); 

私はアニメーションにする必要があります。カードをクリックすると、カードは即座にアニメーションに置き換えられません。 – Chitra

+0

デフォルトのアンドロイドアニメーションを使用する場合は、 android:animateLayoutChanges = "true" をxmlファイルの親ビューに追加するだけです。 –

+0

最初のカードをクリックしたときに円形アニメーションにしたい場合は、2番目を前面に表示する必要がありますが、円形アニメーション – Chitra

関連する問題