2015-06-02 32 views
0

這是我的主要活動,之後OnCreate代碼:更改圖片的Android

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的URL,圖片與下面的代碼:

ImageView imageView = (ImageView) findViewById(R.id.imageView1); 
     new DownloadImageTask(imageView).execute("http://url.com/background1.jpg"); 

什麼,我到底需要,我需要在這ImageView添加三個圖像,並在每3秒,畫面自動切換到另一條鏈路。 Picture 2和三秒後,Picture 3

我們該怎麼做?

感謝

+2

您可以使用'Timer',''CountDownTimer'或'Handler'。 – Piyush

回答

1

使用此功能在您的OnCreate()

handler=new Handler(); 

handler.postDelayed(myRunnable, 3000); 

3秒

調用此之後更改圖像定義它外面的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); 
    } 
} 

注:我的建議是緩存下載的圖像,以避免網絡使用

+0

檢查我已更新我的回答 –

+0

爲你工作? –

+0

您必須創建它作爲Runnable對象 –