Điều tôi muốn làm là di chuyển nền theo chiều ngang và lặp lại vô hạn.Nền di chuyển Android liên tục với hoạt ảnh
Tôi đã thử sử dụng ImageSwitcher
với hoạt ảnh để cung cấp hiệu ứng này, nhưng không thể làm cho nó hoạt động đúng. Đây là mã tôi có cho đến nayL
public class MainActivity extends AppCompatActivity implements ViewSwitcher.ViewFactory {
private Animation animSlide;
private ImageSwitcher image;
private ImageView imagePop;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
image = (ImageSwitcher) findViewById(R.id.image_switcher);
image.setFactory(this);
image.setImageResource(R.drawable.zc06);
Animation in = AnimationUtils.loadAnimation(this, android.R.anim.slide_in_left);
in.setDuration(10000);
Animation out = AnimationUtils.loadAnimation(this, android.R.anim.slide_out_right);
out.setDuration(10000);
image.setInAnimation(in);
image.setOutAnimation(out);
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
image.setImageResource(R.drawable.zc06);
}
});
}
}, 0, 10000);
Animation mZoomInAnimation = AnimationUtils.loadAnimation(this, R.anim.zoom_in);
Animation mZoomOutAnimation = AnimationUtils.loadAnimation(this, R.anim.zoom_out);
imagePop.startAnimation(mZoomInAnimation);
imagePop.startAnimation(mZoomOutAnimation);
}
@Override
public View makeView() {
ImageView myView = new ImageView(getApplicationContext());
return myView;
}
}
Tại sao bạn sử dụng hoạt ảnh xem? Bạn thực sự không nên sử dụng chúng nữa ... Thay vào đó hãy sử dụng API hoạt ảnh mới. Dù sao bạn có thể dễ dàng tạo ra một hình ảnh động như vậy bằng cách có hai 'ImageViews' trong bố trí của bạn và dịch chúng với một' ValueAnimator'. Xem câu trả lời của tôi để biết thêm thông tin. –