C/C++プログラマの管理者が, Androidプログラムにチャレンジ. AndroidプログラミングのTipsをメモっていく予定です.

Property Animation(API Level 11)において, アニメーションの実行をキャンセルするには, アニメータ(animation.Animator)クラスを利用する.

アニメーションのキャンセル(API Level 11)

  • Animation01.java
    • Animator#isRunningメソッドで, アニメーション実行中か否か確認する.
    • Animator#cancelメソッドで, アニメーションの実行をキャンセルする.
package com.moonlight_aska.android.work.animation01;

import android.animation.AnimatorInflater;
import android.animation.AnimatorSet;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;

public class MainActivity extends Activity {
  private AnimatorSet mSet = null;

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

    ImageView img = (ImageView) findViewById(R.id.robot);
    mSet = (AnimatorSet) AnimatorInflater.loadAnimator(this, R.animator.repeat);
    mSet.setTarget(img);
    mSet.start();
  }

  // キャンセルボタンの処理
  public void onCancelListener(View view) {
    if (mSet != null) {
      if (mSet.isRunning()) {
        mSet.cancel();
      }
    }
  }
}
  • res/animator/repeat.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
  <objectAnimator
    android:interpolator="@android:anim/decelerate_interpolator"
    android:propertyName="rotation"
    android:duration="5000"
    android:valueFrom="0"
    android:valueTo="360"
    android:repeatCount="10"
    />
</set>



コメントをかく


ユーザーIDでかく場合はこちら
「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu


逆引き(基礎編)

画面表示/操作(49)

フラグメント(1)

逆引き(応用編)

AD



管理人のみ編集できます