android - Android 开发中的 UI 访问

标签 android multithreading user-interface

我正在为我的 Android 设备 (Honeycomb) 开发一个应用程序,但我遇到了一个我难以解决的问题。该应用程序将在屏幕中央有一个大的多行文本字段,该字段将由后台线程填充,该线程通过套接字与远程服务器通信。

所以我研究了 AsyncTask,它非常接近我的需要,除了我需要在 doInBackground 中更新 UI。我需要在程序运行时保持套接字连接,并在收到新消息时将它们填充到 UI 上。

当消息传入并填充到 UI 中时,用户可以选择在另一个套接字上发送消息。

关于如何做到这一点有什么建议吗?使用 onPostExecute(...) 方法不会完全满足我的需要...如果我在 doInBackground 中使用循环,我将无法更新 UI。

我确定我遗漏了一些相当明显的东西。有什么建议吗?

非常感谢!!

最佳答案

AsyncTask 具有更新 UI 的功能。从 doInBackground 调用 publishProgress,然后将在 UI 线程上调用 onProgressUpdate 让你更新它。

关于android - Android 开发中的 UI 访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7355992/

相关文章:

java - 为 2 版本的数据模式设计 Web 界面

android - 谷歌护目镜 Intent

java - 如何使用泛型将类及其类型作为参数传递?

mysql - 具有 gpars 的 Groovy 应用程序在多次迭代后速度变慢

asp.net - 在ASP.NET中正确实现后台进程Thread

objective-c - 从多个线程使用 runModalForWindow 有多危险?

swift - 在 Swift 中无意中以编程方式创建额外的 UI 按钮?如何运行一次代码

android - 保持 Textinputlayout 提示始终位于顶部

android - 获取Android设备中的sd卡目录

java - 带有两个指针的 JSlider