0
这是我的代码runonuiThread UI环
我想我展示progressdialog直到收到来自服务器, 数据,当我从服务器结果(如果items.size> 0),progressdialog将被辞退; 但我运行这段代码,我收到来自服务器的数据,但在runonuiThread中,仍在运行progressdialog。
List<ServerData> items = new ArrayList();
progressdialog.show();
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
HttpRequest...
Gson gson = new Gson();
Type type = new TypeToken<List<ServerData>>(){}.getType();
items = gson.fromJson(String,type);
Log.d("ThreadInfo","" + items.size);
runOnUiThread(new Runnable() {
@Override
public void run() {
if(items.size > 0){
progressdialog.dismiss();
}
}
});
}
});
当我登录一个ThreadInfo,它发出items.size值为1 但仍progressdialog正在运行并不会消失。
问题, 当items.size不是0时,我该如何解除progressdialog?
如果您有任何想法,请帮助我。
写下runonUIthread之前你如果条件代码。这意味着你必须在if语句中写入runonUIthread if(items.size> 0){} –
@Rajesh你的意思不是runonuithread?但是我知道runonuithread,当我改变UI时,它会在那上面,所以我把progressdialog放在那 –
为什么你不使用简单的异步任务? – Shmuel