我加载了一些数据列表。 我在AsyncTask中执行此操作,并且我还使用了lastNonConfigurationInstance,因此当我更改设备的配置时,不会再次加载列表。 这里一切都清楚了。 但是,当我单击某个项目时,将加载该项目的“扩展”数据。 在这里,我不确定该怎么办...我应该使用另一个AsyncTask下载项目数据还是直接在onItemClick()中进行操作? 如果将其放在AsyncTask中,我还应该记住有关配置更改的信息,在这种情况下,我还应该使用lastNonConfigurationInstance? 预先感谢您的所有建议,答案...

===============>>#1 票数:1 已采纳

如果“扩展”数据花费了超过20ms的时间来获取,则也应该考虑使用AsyncTask。

如果您的数据可以快速获取,则不需要lastNonConfigurationInstance 似乎您可以将用户单击的项目的“当前索引”保存在onSaveInstanceData onCreate(Bundle)重新创建您的活动时,从onCreate(Bundle)读取所选索引并加载子项目的数据。

如果扩展数据需要时间,则可以使用lastNonConfigurationInstance机制为当前选定的项目保存数据。

  ask by lomza translate from so

未解决问题?本站智能推荐:

3回复

Android会在每次配置更改时启动异步任务

在阅读了一些关于Android配置的文章之后,当我将视图从纵向更改为横向时,我仍然不知道如何不启动异步任务。 我从服务器加载一些信息,每次旋转手机都加载它是不明智的。 我想加载一次。 如果不在Manifest文件中添加'changeConfig'标志,我可以这样做吗?
2回复

Android AsycTask和orentation更改

发生配置更改时应如何处理AsyncTasks。 我正在通过这些任务访问ReSTful API,并且在需要取回数据并将其显示给用户的情况下,我遇到了问题。 如果发生配置更改(例如方向更改),则无法正确更新活动。 我相信AsyncTask正在更新已被破坏的旧活动。 我找到了一个解决方案,它需
1回复

如何在我的Listview中添加onItemClick以使用Asynctask从MYSQL获取数据

我是Android编程的初学者。 我只想问一下如何使用Asynctask在我的Listview中添加onItemClick。 这是代码 这是XML文件: 当我单击项目时,我想打开另一个活动并将“用户名”从该列表视图发送到我的php代码: 我怎样才能做到这一点? 请
1回复

从不同的AsyncTask更改AsyncTask中的布局

我要执行以下操作。 我想显示一个包含信息和图像的列表。 这些图像需要一段时间才能加载,所以我想我会做不同的事情。 我将使用两个AsyncTasks。 第一个创建所有布局,并用除图像之外的数据填充它。 第二个只是将图像插入到布局中。 我遇到的问题是,我不知道这怎么可能? 在我的第
1回复

Android-ListView中的Textview由onItemClick更新,滚动时发生更改

我有一个项目(ItemSong)的列表视图,单击该列表即可开始下载(使用Asynctask)。 我有一个textview显示下载进度。 ItemSong具有一个int属性(percentCompleted),该属性跟踪下载进度。 DownloadTask更新此int。 这样,当我滚动
1回复

如何更改AsyncTask中的ListView?

我有一些从服务执行的AsyncTask类: 还有ListAdapter,在方法getView()我使用AsyncTask的setTextView()方法在AsyncTask中设置TextView: AsyncTask从服务执行,但是当我打开包含ListView的Activity时
1回复

在AsyncTask中更改ProgressDialog的消息

我在AsyncTask中运行一个ProgressDialog。 我试图达到,只要缓冲区的长度变大,然后说10000,来自ProgressDialog的消息就会改变。 有人可以帮我吗,这可能吗? 先感谢您。 缓冲区是在AsyncTask doInBackGround中创建的:
2回复

配置更改后的异步任务

我是Android编程的新手。 从我的活动中,我启动了一个Asynctask来执行此操作: onPreExecute():设置AudioRecord并准备好进行录制 doInBackground(): 当我更改配置(开关方向)时,它将依次运行onDestroy(取消as
1回复

服务vs AsyncTask处理配置更改和TCP连接

就是这种情况:我的应用程序只有一个活动,可以处理持久的TCP连接,并使用很多东西(对象的哈希表,按钮,ArrayList,适配器...)动态更新UI。 目前,我使用AsyncTask处理连接,并寻找一种保存方法: 连接 所有变量,例如动态创建的视图 当屏幕旋转或用户接
1回复

在将AsyncTask与片段配合使用时处理配置更改

我一直在尝试了解执行后台任务时如何处理配置更改。 从我的研究中,我发现最好的解决方案是将任务设置为具有setRetainInstance(true)的无头片段。 到处都有关于这个主题的很多讨论,例如。 在这里和这里 ,但我一直无法让他们为我工作。 我正在尝试实现的是: 将我