gpt4 book ai didi

java - android - Теextview 不会立即改变

转载 作者:行者123 更新时间:2023-11-29 19:57:44 25 4
gpt4 key购买 nike

我从服务器接受数组,然后填充数据textview。

private class ReadMessages extends       AsyncTask<Void, Void, Integer>
{
HttpURLConnection conn;
String ansver, bfr_st;
JSONArray JsonArray;
protected Integer doInBackground(Void... params) {
try {
String post_url = server_name +"/chat.php?action=select";
conn = (HttpURLConnection) new URL(post_url).openConnection();
conn.setReadTimeout(10000);
conn.setConnectTimeout(15000);
conn.setRequestMethod("GET");
conn.setRequestProperty("User-Agent", "Mozilla/5.0");
conn.setDoInput(true);
conn.connect();

InputStream is = conn.getInputStream(); //канал
BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8")); //буфер
StringBuilder sb = new StringBuilder(); //сборщик строки
while ((bfr_st = br.readLine()) != null) {
sb.append(bfr_st); //получили массив в виде string
}

String json_bum = sb.toString();
JsonArray = new JSONArray(json_bum); //преобразовали string обратно в массив

for (int i=0; i<JsonArray.length(); i++) {
jsonObject = JsonArray.getJSONObject(i); //вынули все обьекты
}
tv_number.setText("Номер - " + jsonObject.getInt("_id") +
"\n"
+ "Автор - " + jsonObject.getString("author") +
"\n"
+ "Адресат - " + jsonObject.getString("client") +
"\n"
+ "Время - " + jsonObject.getLong("data") +
"\n"
+ "Текст - " + jsonObject.getString("text") +
"\n");

is.close();
br.close();

} catch (Exception e) {

} finally {

conn.disconnect();
}
return null;
}


}

当我折叠应用程序然后返回时,文本会发生变化。但是当你按下一个没有发生的按钮时立即

最佳答案

您只能从应用程序主线程更新您的 GUI 元素/小部件。 AsyncTask 正在创建单独的线程,您不能通过方法 doInBackground 执行此操作,请尝试使用 publishProgressonProgressUpdate 或在 中执行所有这些工作人员>onPostExecute

关于java - android - Теextview 不会立即改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36576474/

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