我遇到了一个问题,我认为我无法从 asyncTask 访问 ListView实际上,我真的不知道这里的真正问题是让我告诉你发生了什么我有一个活动正在执行 AsyncTask 并创建HttpURLConnection. 有时我会收到异常 ( ProtocolException),因为流意外结束。因此,我为此异常创建了一个处理程序,该处理程序调用活动类中的函数或方法以向用户显示消息这是一张图片,让您了解我的项目是什么。每当抛出异常时,这里的问题都会调用我用来将文本添加到 listView 的相同函数/方法,但是在它调用 listView 之后消失了,但是当我手动最小化软键盘时,一切都会变好。我的班级结构是public class MainActivity extends AppCompatActivity{ protected void onCreate(Bundle savedInstanceState) { addMessageToListView()//works fin here } protected void addMessage(String message, int userMessage, ListView listView) // the function { try { messages.add(new Message(message,userMessage)); MessagesAdapter messagesAdapter = new MessagesAdapter(messages, getBaseContext()); messagesAdapter.notifyDataSetChanged(); listView.setAdapter(messagesAdapter); } catch (Exception exception) { } } private class HttpPostAsyncTask extends AsyncTask<String, Void, String> { ... @Override protected void onPostExecute(String result) { try { addMessageToListView()//works fin here } catch (Exception exception) { } } protected String doInBackground(String... params) { String result = ""; for (int i = 0; i <= 0; ++i) { result = this.invokePost(params[i], this.postData); } return result; } private String invokePost(String requestURL, HashMap<String, String> postDataParams)// called from doInBackground { try { addMessageToListView()//works fin here } catch (Exception exception) { addMessageToListView()//not orking here } } }}我不知道如何解释更多。
添加回答
举报
0/150
提交
取消