Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用缓存的ListView的android活动的生命周期?_Android_Caching_Listview_Android Activity_Lifecycle - Fatal编程技术网

使用缓存的ListView的android活动的生命周期?

使用缓存的ListView的android活动的生命周期?,android,caching,listview,android-activity,lifecycle,Android,Caching,Listview,Android Activity,Lifecycle,我实现了一个listView,它显示在我的Web服务器上下载的项目。listView使用“缓存”(holder),我单击listView的一个项目,并调用一个意图(新活动)。它可以完美地工作,但是当我从这个活动返回到我的listView时,会调用onStart()并再次调用下载(而我不需要它,因为我使用了“缓存”) 我如何解决这个问题?我需要在一个函数中调用Web服务器,当我返回此活动时,它不会调用该函数 谢谢 Florent如果您试图在活动之间缓存图像,有两种方法: 将文件写入SD卡-如果您希

我实现了一个listView,它显示在我的Web服务器上下载的项目。listView使用“缓存”(holder),我单击listView的一个项目,并调用一个意图(新活动)。它可以完美地工作,但是当我从这个活动返回到我的listView时,会调用onStart()并再次调用下载(而我不需要它,因为我使用了“缓存”)

我如何解决这个问题?我需要在一个函数中调用Web服务器,当我返回此活动时,它不会调用该函数

谢谢


Florent

如果您试图在活动之间缓存图像,有两种方法:

  • 将文件写入SD卡-如果您希望即使在活动结束并重新启动后图像仍保留在SD卡上,这可能很方便。缺点是您现在必须管理映像的生命周期,并确保定期删除它们,以便缓存目录不会不断增长

  • 使用服务-我不确定这种方法的性能如何,而且它往往有点复杂。当你的活动来来去去去时,一个服务将继续存在,将你的图像保存在它的记忆中。阅读了解有关与服务通信的更多信息

  • 以静态单例方式存储图像——快速而肮脏的方式;只要确保内存中没有存储太多,否则会出现内存不足异常

  • 我可能更喜欢方法1

    另请参阅