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();