Android Androidアニメーション属性アニメーション-回転アニメーション


導入
属性アニメーションの出現は、補間アニメーションの不足点を補い、補間アニメーションは、表面上のものを変えただけで、その中の属性は変わっていないが、属性アニメーションは逆に、表面上のものを変え、その属性も変更した.
クラス:ObjectAnimator
アトリビュートアニメーションを操作するクラス
アニメーション-関連記事
フレームアニメーション
フレームアニメーション:https://blog.csdn.net/qq_40881680/article/details/82222684
 
補間アニメーション
補間アニメーション-アニメーションをパン:https://blog.csdn.net/qq_40881680/article/details/82255459
補間アニメーション-アニメーションをスケール:https://blog.csdn.net/qq_40881680/article/details/82260914
補間アニメーション-回転アニメーション:https://blog.csdn.net/qq_40881680/article/details/82261557
補間アニメーション-透明/グラデーションアニメーション:https://blog.csdn.net/qq_40881680/article/details/82261869
トゥイーンアニメーション-アニメーションを組み合わせます(4つのアニメーションを一緒に再生):https://blog.csdn.net/qq_40881680/article/details/82285987
 
プロパティーアニメーション
アトリビュートアニメーション-グラデーション透明アニメーション:https://blog.csdn.net/qq_40881680/article/details/82318363
属性アニメーション-回転アニメーション:https://blog.csdn.net/qq_40881680/article/details/82354017
アトリビュートアニメーション-アニメーションをスケールするには:https://blog.csdn.net/qq_40881680/article/details/82377850
アトリビュートアニメーション-アニメーションを移動するには:https://blog.csdn.net/qq_40881680/article/details/82378391
アトリビュートアニメーション-アニメーションを組み合わせる:https://blog.csdn.net/qq_40881680/article/details/82381258
レイアウトファイル編



    

        

代码逻辑 篇

属性动画用到的是:ObjectAnimator

package com.example.text.shuxingdonghua;

import android.animation.ObjectAnimator;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    ObjectAnimator objectAnimator;
    private Button button;
    private ImageView image;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
    }

    private void initView() {
        button = (Button) findViewById(R.id.button);
        image = (ImageView) findViewById(R.id.image);
        button.setOnClickListener(this);
        image.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.button:
                objectAnimator = ObjectAnimator.ofFloat(image,"rotation",360f);
                objectAnimator.setDuration(2000);
                objectAnimator.start();
                break;
            case R.id.image:
                Toast.makeText(this, "      ", Toast.LENGTH_SHORT).show();
                break;
        }
    }
}

Android Studioの高速インスタンス化-プラグインのインストールと使用:https://blog.csdn.net/qq_40881680/article/details/82012180
objectAnimator = ObjectAnimator.ofFloat(image,"rotation",360f);
画像を360度回転させ、効果は1回のみです.
objectAnimator = ObjectAnimator.ofFloat(image,"rotation",0f,360f);
画像を初期値0度から時計回りに360度回転
objectAnimator = ObjectAnimator.ofFloat(image,"rotation",0f,360f,0f);
画像を、最初の0度から時計回りに360度回転させ、反時計回りに360度から0度回転させます.
ObjectAnimator.ofFloat()カッコのパラメータ:
最初のパラメータ、アニメーションのコントロールidを実現するには
2番目のパラメータは、実装するアニメーションアトリビュートです.以下に6つのパラメータを示します.
propertyName
詳細な役割
alpha
グラデーション効果を実現
rotation
回転回転効果を実現
translationX
水平移動(左または右)
translationY
縦方向の移動(上または下方向の移動)
scaleX
軸Xのスケーリング効果(拡大または縮小)を実現
scaleY
軸Yのスケーリング効果(拡大または縮小)を実現
後のパラメータはあまり説明しないで、以上はすべてあります
効果デモ編
1つ目は、画像を360度回転させることです
2つ目は、画像を初期値0度から時計回りに360度回転させることです.
3つ目は、画像を初期0度から時計回りに360度回転させ、反時計回りに360度から0度に回転させることです.