gpt4 book ai didi

java - AsynkTask 后方法不更新 UI

转载 作者:行者123 更新时间:2023-12-02 07:51:33 26 4
gpt4 key购买 nike

我编写了一个 AsynkTask 连接到数据库,然后将结果放入 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() 两次。您必须获取每个 View 的引用,并通过在 onPostExecute() 中更改其属性来更新它。

关于java - AsynkTask 后方法不更新 UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10166306/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com