標籤:android style blog io color os 使用 sp java
void java.util.Timer.schedule(TimerTask task, long delay, long period)
第一個參數,是 TimerTask 類,在包:import java.util.TimerTask .使用者要繼承該類,並實現public void run() 方法,因為 TimerTask 類 實現了 Runnable 介面。
第二個參數的意思是,使用者調用 schedule() 方法後,要等待這麼長的時間才可以第一次執行run() 方法。
第三個參數的意思就是,第一次調用之後,從第二次開始每隔多長的時間調用一次 run() 方法。
然後使用該方式實現圖片定時迴圈切換,代碼如下:
1 import java.util.Timer; 2 import java.util.TimerTask; 3 4 import android.app.Activity; 5 import android.os.Bundle; 6 import android.os.Handler; 7 import android.os.Message; 8 import android.widget.ImageView; 9 10 public class HandlerActivity extends Activity {11 // 要切換的照片,放在drawable檔案夾下12 int[] images = { R.drawable.img1, R.drawable.img2, R.drawable.img3, };13 // Message傳遞標誌14 int SIGN = 17;15 // 照片索引16 int num = 0;17 18 @Override19 public void onCreate(Bundle savedInstanceState) {20 super.onCreate(savedInstanceState);21 setContentView(R.layout.main);22 final ImageView image = (ImageView) findViewById(R.id.image);23 final Handler handler = new Handler() {24 @Override25 public void handleMessage(Message msg) {26 // TODO Auto-generated method stub27 super.handleMessage(msg);28 if (msg.what == SIGN) {29 image.setImageResource(images[num++]);30 if (num >= images.length) {31 num = 0;32 }33 }34 }35 };36 new Timer().schedule(new TimerTask() {37 @Override38 public void run() {39 // TODO Auto-generated method stub40 Message msg = new Message();41 msg.what = SIGN;42 handler.sendMessage(msg);43 }44 }, 1000, 500);45 }46 }
Android Timer 的 schedule()方法定時迴圈切換圖片