这是我的主要活动 - 在OnCreate
代码之后:
private class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
ImageView bmImage;
public DownloadImageTask(ImageView bmImage) {
this.bmImage = bmImage;
}
protected Bitmap doInBackground(String... urls) {
String urldisplay = urls[0];
Bitmap mIcon11 = null;
try {
InputStream in = new java.net.URL(urldisplay).openStream();
mIcon11 = BitmapFactory.decodeStream(in);
} catch (Exception e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
}
return mIcon11;
}
protected void onPostExecute(Bitmap result) {
bmImage.setImageBitmap(result);
}
}
我有一个ImageView
所以我可以使用以下代码显示此ImageView
中的网址图片:
ImageView imageView = (ImageView) findViewById(R.id.imageView1);
new DownloadImageTask(imageView).execute("http://url.com/background1.jpg");
我需要的是什么,我需要在此ImageView
中添加三个图像,并且每3秒钟,图片会自动更改为另一个链接。
Picture 2
以及三秒后,Picture 3
我们如何做到这一点?
由于
答案 0 :(得分:1)
使用此功能在3秒后更改图像
在OnCreate()
handler=new Handler();
handler.postDelayed(myRunnable, 3000);
在OnCreate()
private Runnable myRunnable=new Runnable() {
@Override
public void run() {
// change your url to imgeview here some thing like
new DownloadImageTask(imageView).execute("http://url.com/picutre2.jpg");
handler.postDelayed(this, 3000);
}
}
注意:我的建议是缓存下载的图片以避免网络使用