安卓for循環調用接口並渲染出現app崩潰或者白屏的問題

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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章