概述
1.需求:
我的页面上有个按钮默认显示的文字 one
如果当前时间为 9:00 时 按钮的文字不改变
但当时间到9:20时 需要将按钮的文字改变为 two
2.思路:
需要周期性的执行某一任务,更改UI组件
3.代码参考
/*全局变量 方便停止定时操作*/
ScheduledExecutorService executorService = null;
MyHandler myHandler;
/*onCreate方法中*/
/*停止操作 executorService.shutdown();*/
executorService = Executors.newScheduledThreadPool(1);
executorService.scheduleAtFixedRate(
new Runnable() {
@Override
public void run() {
myHandler = new MyHandler(this);
MyThread m = new MyThread();
new Thread(m).start();
}
},0,10, TimeUnit.MILLISECONDS
);
public class MyHandler extends Handler {
public MyHandler(){}
public MyHandler(Looper L){
super(L);
}
@Override
public void handleMessage(Message msg){
/*此处用于更新UI 通过 返回的消息内容*/
Bundle bundle = msg.getData();
String res = bundle.getString("Res");
if(res == "1")
/*btnMes为操作的按钮*/
btnMes.setText("two");
}
}
public class MyThread implements Runnable{
public void run(){
Message message=myHandler.obtainMessage();
Bundle bundle = new Bundle();
bundle.putString("Res","1");
message.setData(bundle);
myHandler.sendMessage(message);
}
}
最后
以上就是谨慎猫咪为你收集整理的Android ScheduledExecutorService 周期性执行任务的全部内容,希望文章能够帮你解决Android ScheduledExecutorService 周期性执行任务所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复