android - 从不同的 Activity 方法更新 Activity UI?

标签 android tabs android-activity android-asynctask

我有一个选项卡小部件,其中一个选项卡是聊天类型功能。我想定期更新聊天数据(取决于聊天选项卡是否处于 Activity 状态)。

最好的方法似乎是在我的主 TabActivity 类中使​​用 AsyncTask,因为这可以避免在 AsyncTask 运行时在后台破坏聊天 Activity 的任何问题。我想确保 Activity 不会被销毁并重新创建,从而导致我的 AsyncTask 无法修改实际 Activity Activity 的数据。

但是,现在我的 AsyncTask 位于 TabActivity Activity 中,我没有直接方法从 onPostExecute() 调用 Chat 的 ListAdapter notifyDataSetChanged()方法不再了。有没有办法从 TabHost/TabActivity 获取对给定选项卡当前 Activity 的引用?

或者,我可以假设我的聊天 Activity 永远不会作为 TabActivity Activity 的子 Activity 被销毁(好吧,至少在 TabActivity 处于 Activity 状态时不会被销毁),然后将 AsyncTask 放入聊天 Activity 中?

最佳答案

实际上,最好的方法是让一个线程运行并定期获取聊天数据。然后,您可以从您的 UI 轮询线程以获取新消息。这样,无论 Activity 发生什么情况,您都可以让线程运行。

关于android - 从不同的 Activity 方法更新 Activity UI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2769257/

相关文章:

javascript - 再一次约: Error: Attempting to use a disconnected port object,怎么办?

android - 应用程序被杀死时如何打开主要 Activity ?

android - 在 Kotlin 中以编程方式更改语言环境

android - 如何在 Android 上重新连接当前处于 sleep 模式的 WiFi

android - 如果没有 @Inject 构造函数或来自 @Provides- 或 @Produces- 注释的方法,则不能提供改造

java - Activity 关闭时服务停止

android - 如何仅在一个 Activity android 中在两个布局之间切换

android - 如何解决 IllegalStateException 和 ParserConfigurationException 以使用 apache OpenNLP 在 android studio 中查找位置

jquery 工具 - 选项卡鼠标悬停 - 添加链接

显示选项卡后触发 Primefaces tabview tabChange 事件