我写了一个AsynkTask巫婆连接到数据库,然后将结果放在UI中。这完美地工作,但是然后我想包含一个Dialog或其他东西,其他Layout巫婆显示一个progressBar然后更新UI。
好了,现在布局发生了变化,最后我有了“ testGUI”布局,但是它没有随AsynkTask数据一起升级。这是代码。非常感谢。
类DatabaseAsync扩展了AsyncTask {
@Override
protected void onPreExecute(){
setContentView(R.layout.loading);
}
/**
* Se ejecuta en el hilo secundario, en segundo plano
*/
@Override
protected JSONArray doInBackground(Void... params) {
JSONArray jArray = new JSONArray();
jArray = DatabaseController
.rellenarArray("SomeURL");
return jArray;
}
/**
* Una vez terminado el hilo secundario se ejecuta esto
*/
@Override
protected void onPostExecute(JSONArray jArrayFull) {
setContentView(R.layout.testgui);
getQuestion(jArrayFull,1);
}
}
最佳答案
您不能两次使用setContentView()
。您将必须获取每个视图的引用,并通过在onPostExecute()
中更改其属性来对其进行更新。