这个问题是一些初学者提出来的问题,实际上解决的方法很简单,比如:可以使用CountDownTimer()方法,由以下两步实现:

1) 声明一些数组,这些数组包含你图片的标识符,

2) 声明countDownTimer:

 //代码片段
 int i=0;
 new CountDownTimer(10000,1000){
 @Override
 public void onTick(long millisUntilFinished) {}
 @Override
 public void onFinish(){
 imgView.setImageDrawable(sdk.getContext().getResources().getDrawable(array[i]));
 i++;
 if(i== array.length) i=0;
 start();
 }
 }.start();

可以使用线程来实现,开启一个线程,每隔10秒给Handler发送一个消息,Handler接受到消息后更改图片。

 public void run(){
 while(true){
 try{
 mReadDataHandler.sendEmptyMessage(0);
 Thread.sleep(10000);
 }
 catch(InterruptedException e)
 { e.printStackTrace();
 }
 }
 }
 class ReadDataHandler extends Handler{
 @Override
 public void handleMessage(Message msg){
 imgView.setImageDrawable(sdk.getContext().getResources().getDrawable(array[i])); i++; if(i >= array.length){ i = 0; }
 super.handleMessage(msg); }
 }

你可以创建帧动画来实现:

 AnimationDrawable animation = new AnimationDrawable();
 animation.addFrame(getResources().getDrawable(R.drawable.image1), 100);
 animation.addFrame(getResources().getDrawable(R.drawable.image2), 500);
 animation.addFrame(getResources().getDrawable(R.drawable.image3), 300);
 animation.setOneShot(false);
 ImageView imageAnim = (ImageView) findViewById(R.id.img);
 imageAnim.setBackgroundDrawable(animation);

// start the animation! animation.start()

小结:对于学习android的朋友们,最好有java的开发基础,当然即便是没有java开发的基础,如果学习过C语言的都可以。学习java也不是什么难事,只要认真还是容易学会的。把基础学好了在开发的过程中就不会出现瓶颈了,

Copyright © 2014-2024 it689.com (京ICP备12032795号-2) 版权所有 Power by IT689