2013-05-07 119 views
0

我想要做一些非常基本的事情,因爲有一種動畫。因此,像一個循環:在Android中激活視圖

在視圖
  • 更新位圖
  • 睡眠100ms的
  • 顯示位圖「mabm」

我的代碼工作只有一次,進行第一循環,我可以」不能爲其他循環尋找解決方案。 這樣做最簡單的方法是什麼? 謝謝你的幫助!

我的代碼:

Bitmap mabm= Bitmap.createBitmap(400,400,Bitmap.Config.ARGB_8888); 
final Drawable d =new BitmapDrawable(mabm); 

/* more code here */ 

Taff=new Thread(new Runnable() { 

    // voir : android updating a view repeatedly 

    @Override 
    public void run(){         
     try { 
      Thread.sleep(100); 
     } catch (InterruptedException e) { 
      //empty catch 
     } 

     deco.decompp() ; // this method updates mabm   

     runOnUiThread(new Runnable() { 
      @Override 
      public void run() { 
       //Drawable d =new BitmapDrawable(mabm); 
       ds.setBackgroundDrawable(d); 
      }        
     }); 
    } 
); 
+1

哪裏是代碼中的循環?我想它錯過了這部分。 – Guian 2013-05-07 10:56:07

回答

0

其實這個線程塔夫是指由其他線程(讀取智能卡,這是一個緩慢的設備)被觸發。 但你的問題幫助我明白了,Taff.start()不會觸發Taff的新執行,並且不能用於此目的。 所以我改變了塔夫的代碼,用一個真正的循環,現在它的工作! 謝謝你的幫助。