这个问题比编码相关的问题更概念化。
我有一个带有 Activity
A 和 B 的应用。
我从 Activity
A 调用了一个 AsyncTask
,在调用过程中,我不想阻止用户显示进度对话框,所以我的用户可以自由地在应用程序中四处走动而不会厌倦等待。
现在,查询是 AsyncTask
或者说 Service
正在从 Activity
A 调用,它负责下载某种数据从服务器。在进行调用时,用户更改了 Activity
并且 Activity
A 已进入后台。
现在,当用户在应用程序中自由移动时,他只想返回到 Activity
A 来检查下载状态,(假设我设置了一些数据到我的 TextView
).
现在的问题是,一旦下载结束,而我的 Activity
A 仍在后台,我的 UI 应该在 Activity
仍在后台时更新。通过这种方式,用户在切换到 Activity
A 之前会感觉到他获得了数据。
这可能吗,如果可能的话怎么办?
总结一下我的问题,我可以更新 Activity
的 UI,而它仍在后台使用 Asynctask
或 Service
吗? Activity
调用以从服务器获取数据。
一篇帖子建议我最好在 onResume()
中更新 **UI。我的问题是,这是唯一的方法吗?
最佳答案
once the download is over , while my
Activity
A is still in background, my UI should be updated whileActivity
is still in background. This way the user feels he gets the data before he switches toActivity
A.
这是不可能的。您会看到,Activity
必须通过 onCreate()
和 onResume()
回调才能更改 UI。
此外,您应该使用 bound Service
在返回前台时更新 Activity
。
关于android - 我可以更新后台 Activity 的用户界面吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30487983/