使用Handler实现定时刷新数据,更新UI
程序员文章站
2022-07-14 18:25:18
...
本文章只是自己作为学习记录之用,如有错误之处,请指正,谢谢!
//定义一个发送json请求数据的代码
public void SendRequestWithOkhttp() {
new Thread(new Runnable() {
@Override
public void run() {
try {
....一些OKhttp请求代码
Message message=handler.obtainMessage();
handler.sendMessage(message);
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
//在handler中接收Message
private Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
....对message传递过来的数据,进行使用,比如textview.setText()
};
//创建一个线程,通过线程发送延迟消息,实现三秒刷新数据的效果
Runnable runnable=new Runnable() {
@Override
public void run() {
SendRequestWithOkhttp(); //发送请求
handler.postDelayed(this,3000);//延迟发送消息,实现3秒一次发送数据
}
};
在onCreate()中,通过runnable.run(),启动该runnable,开始循环。然后在不用了之后:removecallback(runnable)
如有不正之处,请多多指教,谢谢。
上一篇: @RequestBody传递多个对象
下一篇: android之间传递多个对象