まずは Java
ImageView image = (ImageView)findViewById(R.id.image);
fadeout = AnimationUtils.loadAnimation(this,R.anim.image_fadeout);
fadeout.setAnimationListener(new AnimationListener(){
@Override
public void onAnimationEnd(Animation animation) {
// アニメーションの最後は完全にimageを消し去るよ?
image.setVisibility(View.GONE);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationStart(Animation animation) {
}
});
fadeout_image = new Runnable(){
public void run(){
image.startAnimation(fadeout);
}
};
//3秒後にアニメーション開始
handler.postDelayed(fadeout_image,3000);
つづいて
fadeout = AnimationUtils.loadAnimation(this,R.anim.image_fadeout);
で定義してるアニメーション
res/anim/image_fadeout.xml
を配置XMLに
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:duration="2000"
android:interpolator="@android:anim/linear_interpolator"
/>
を入れるだけ
alpahは透明処理(厳密には違うけど・・・)
fromAlpha = 1.0 ではっきりくっきり見せる (アニメーションの開始)
toAlpha = 0.0 でまったく見えなくする
はっきりくっきり => まったく見えなくするのを duration 2000msec かけて実行するよ?
このときの動き(interpolator)はlinear_interpolator等速だよ?
ということです
以上!
0 件のコメント:
コメントを投稿