[英]Update ListView of previous activity in background
我对以前的ListView活动有疑问。
我的ListView正在使用套接字连接继续更新,现在,当我单击任何一个列表行时,现在我可以回到下一个屏幕,当我返回到上一个ListView屏幕时,我的ListView将再次开始更新,但是我想保留当我在nextscreen上时,在后台更新ListView。
当我在下一个屏幕上时,我想保持上一个屏幕的状态。
在我看来,您用于加载ListView
数据的代码与Activity
绑定在一起。 例如,您的Activity
中有一个AsyncTask
或Thread
与ListView
然后您可以使用它来下载数据,或执行获取数据以填充列表所需的任何操作。 我还假设您在Activity
生命周期方法之一(例如onCreate()
启动它。
如果是这种情况,那么您应该考虑从活动代码中分离用于获取列表数据的代码。
一种实现方法是使用Service
,该Service
将能够独立于应用程序的其余部分运行,并完成所有繁重的工作,从而获取列表数据。 您可以在应用程序中的任何位置与服务进行通信。 Service
可以将数据保存到数据库。 然后,您在“活动”中要做的就是查询数据库并填充适配器以获取最新数据而没有太多延迟。
您可以在此处阅读有关服务的更多信息: http : //developer.android.com/reference/android/app/Service.html
您可以(也许应该)执行Paul的建议, 或者可以使用Fragments
或ViewFlipper
更改切换屏幕的ViewFlipper
。 这样,您仍然可以在其他页面上执行其他操作时仍运行AsyncTask
或Thread
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.