5

新しい Android アプリを開始しましたが、問題が 1 つあります。

いくつかの ImageView 内で ViewFlipper をコーディングしたいと考えています。(特に難しいことはありません)

ユーザーが要素をクリックすると、要素が回転するはずです (この 3D-Flip アニメーション: http://www.inter-fuser.com/2009/08/android-animations-3d-flip.htmlを使用)。(私もすでにこれを実装しています)。

私のアイデアは、ViewFlipper の最初の要素に対してのみ機能します。この最初のビューを膨らませ始めましたが、新しい要素は反転しません。

2番目のビューも反転するように、onclickイベントで最初のビューを「複製/コピー」することは可能ですか?

手伝ってくれてありがとう。

4

2 に答える 2

3

最良かつ最も簡単なソリューションはこちらです: https://github.com/genzeb/flip

次のようにして、任意の ViewAnimator (ViewFipper など) でフリップ トランジションを使用します。

AnimationFactory.flipTransition(viewFlipper, FlipDirection.LEFT_RIGHT);

于 2015-11-22T04:31:15.543 に答える
1

これをサンプルとして使用できます。これがオブジェクト アニメーターです。:

    <?xml version="1.0" encoding="utf-8"?>
    <objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
        android:propertyName="rotationY"
        android:valueFrom="0"
        android:valueTo="360" >
    </objectAnimator>

一部のチュートリアルには valueTo のみが記載されていることに気付きました。これにより、ビューがすでに 360 度になっているため、一度だけ反転することができます。これ以上反転することはないため、常に valueFrom も使用してください。そして、ここに任意のビューを反転するコードがあります:

    public static void flip(Context context, View view) {
    ObjectAnimator anim = (ObjectAnimator) AnimatorInflater.loadAnimator(
            context, R.animator.flip);
    anim.setTarget(view);
    anim.setDuration(1000);
    anim.end();
    anim.start();
}
于 2013-06-17T10:20:30.433 に答える