私は20枚の画像を持っていて、次々とトランジションします。トランジションは、タイマーと一緒に次のループで実装されます。
final Runnable mUpdateResults = new Runnable() {
public void run() {
AnimateandSlideShow();
}
};
final int delay = 2000;
final long period = 2000;
final Timer timer = new Timer();
final Handler mHandler = new Handler();
timer.scheduleAtFixedRate(new TimerTask() {
public void run() {
mHandler.post(mUpdateResults);
}
}, delay, period);
private void AnimateandSlideShow() {
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), IMAGE_IDS[currentimageindex%IMAGE_IDS.length]);
slidingimage = (ImageView)findViewById(R.id.mainImageView);
int imViewheight = 400;
int imViewwidth = 600;
Bitmap scaledBitmap = Bitmap.createScaledBitmap(bitmap, imViewwidth, imViewheight, true);
slidingimage.setImageBitmap(convertColorIntoBlackAndWhiteImage(scaledBitmap));
currentimageindex++;
slidingimage.startAnimation(fadeInAnimation);
slidingimage.startAnimation(fadeOutAnimation);
}
トランジションのフェードイン、1000ms 表示、フェードアウトを行うのが好きです。として実装されています
Animation fadeOutAnimation = new AlphaAnimation(1.0f, 0.0f);
Animation fadeInAnimation = new AlphaAnimation(0.0f, 1.0f);
fadeInAnimation.setDuration(2000);
fadeOutAnimation.setDuration(2000);
今起こっていることはフェードインかフェードアウトだけです。それらの1つだけ。画像が最初にフェードインし、次に 1000ms 表示されてフェードアウトするようにするにはどうすればよいですか。