1.前言
最近在写一个安卓的app,有需求要上传数据,并且每次调用接口上传一次,记录上传成功和失败的记录,并且在安卓动态显示上传条数变化
2.过程
//主线程
//获取SQList的数据
List<CodeBean> codeList = dbUtils.selectis();
for(CodeBean codeBean: codeList){
//调用接口获取数据并直接渲染
}
这时候数据量过大会出现白屏或者app崩溃!之后频繁改了几个,最终获得了一个比较好的解决方法
//开启子线程进行for循环的耗时操作,解决白屏问题
new Thread() {
public void run() {
//这儿是耗时操作,完成之后更新UI;
//for循环调用接口
runOnUiThread(new Runnable(){
@Override
public void run() {
//接口返回回调完成之后更新UI,解决app崩溃问题
}
});
}
}.start();