(1) Timer timer = new Timer();
TimerTask task = new TimerTask() {
public void run() {
Message message = new Message();
message.what = 1;
handler.sendMessage(message);
}
};
timer.schedule(task, 1000);
Handler handler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case 1:
scrollView = getLayoutInflater().inflate(R.layout.alarmscroll, null);
scrollWindow = new PopupWindow(scrollView, LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
scrollWindow.showAtLocation(findViewById(R.id.widgetlayout),
Gravity.CENTER, 0, 0);
break;
}
super.handleMessage(msg);
}
};
(2)每隔五秒更新标题栏的例子:
import java.util.Timer;
import java.util.TimerTask;
import android.app.Activity;
import android.os.Bundle;
import android.os.Message;
import android.os.Handler;
public class Activity1 extends Activity {
private int t = 0;
private Handler mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch(msg.what){
case 1:
updateTitle();
break;
}
}
};
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Timer timer = new Timer();
timer.scheduleAtFixedRate(new MyTask(), 1, 5000);
}
private class MyTask extends TimerTask{
@Override
public void run() {
// Activity1.this.updateTitle();
Message message = new Message();
message.what = 1;
mHandler.sendMessage(message);
}
}
public void updateTitle(){
setTitle("title:" + t);
t ++;
}
}
TimerTask task = new TimerTask() {
public void run() {
Message message = new Message();
message.what = 1;
handler.sendMessage(message);
}
};
timer.schedule(task, 1000);
Handler handler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case 1:
scrollView = getLayoutInflater().inflate(R.layout.alarmscroll, null);
scrollWindow = new PopupWindow(scrollView, LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
scrollWindow.showAtLocation(findViewById(R.id.widgetlayout),
Gravity.CENTER, 0, 0);
break;
}
super.handleMessage(msg);
}
};
(2)每隔五秒更新标题栏的例子:
import java.util.Timer;
import java.util.TimerTask;
import android.app.Activity;
import android.os.Bundle;
import android.os.Message;
import android.os.Handler;
public class Activity1 extends Activity {
private int t = 0;
private Handler mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch(msg.what){
case 1:
updateTitle();
break;
}
}
};
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Timer timer = new Timer();
timer.scheduleAtFixedRate(new MyTask(), 1, 5000);
}
private class MyTask extends TimerTask{
@Override
public void run() {
// Activity1.this.updateTitle();
Message message = new Message();
message.what = 1;
mHandler.sendMessage(message);
}
}
public void updateTitle(){
setTitle("title:" + t);
t ++;
}
}