我对我以前的ListView活动有疑问。
我有我的ListView,它继续使用套接字连接更新,现在当我点击任何列表行时,我现在可以进入我的下一个屏幕,当我回到我之前的ListView屏幕时,我的ListView再次开始更新但是我当我在我的nextscreen上时,我想继续在后台更新我的ListView。
当我在我的nextscreen上时,我希望保持我以前的屏幕活着。
答案 0 :(得分:0)
听起来,您用来加载ListView
数据的代码与您的Activity
相关联。
例如,您AsyncTask
中的Thread
或Activity
与您的ListView
相同,您可以使用它来下载数据,或者执行任何操作来填充数据列表。我还假设您使用其中一个Activity
生命周期方法启动它,例如onCreate()
。
如果是这种情况,那么您应该考虑从活动代码中分离用于获取列表数据的代码。
执行此操作的一种方法是使用Service
,它将能够独立于应用程序的其余部分运行,并通过获取列表的数据来执行所有繁重的工作。您可以从应用程序的任何位置与服务进行通信。 Service
可以将数据保存到数据库。然后,您在Activity中所要做的就是查询数据库并填充适配器以获得最新数据而不会有太多延迟。
您可以在此处详细了解服务: http://developer.android.com/reference/android/app/Service.html
答案 1 :(得分:0)
您可以(并且可能应该)执行保罗建议的或,您可以使用Fragments
或ViewFlipper
更改为切换屏幕的方式。这样,您可以在其他页面上执行其他操作时运行AsyncTask
或Thread
。