Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.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
Android 如何恢复活动及其ListFragment(从服务器加载数据)_Android_Android Fragments_Android Activity_Android Listfragment - Fatal编程技术网

Android 如何恢复活动及其ListFragment(从服务器加载数据)

Android 如何恢复活动及其ListFragment(从服务器加载数据),android,android-fragments,android-activity,android-listfragment,Android,Android Fragments,Android Activity,Android Listfragment,我确信,“保存还原”已经讨论了很多,但我还不能理解它。我有以下几种情况 启动应用程序-->main活动-->onCreate()-->加载MyListFragment MyListFragment从服务器获取数据,并在OnlistItem中单击“我正在启动另一个活动”。当用户返回(通过在ActionBar中向上单击)MainActivity时,所有内容都会重新创建,包括MyListFragment。它还可以再次连接到服务器以再次获取数据 我希望避免从服务器重新加载数据,并看到用户在同一屏幕上显示

我确信,“保存还原”已经讨论了很多,但我还不能理解它。我有以下几种情况

启动应用程序-->main活动-->onCreate()-->加载MyListFragment

MyListFragment从服务器获取数据,并在OnlistItem中单击“我正在启动另一个活动”。当用户返回(通过在ActionBar中向上单击)MainActivity时,所有内容都会重新创建,包括MyListFragment。它还可以再次连接到服务器以再次获取数据

我希望避免从服务器重新加载数据,并看到用户在同一屏幕上显示片段和数据

谢谢你的帮助


谢谢

您需要将服务呼叫与UI分离。没有办法在被销毁和重新创建的活动中保留任意数量的项目

使用服务从服务器加载数据。该服务应填充本地SQLite数据库


然后让您的listview填充SQLite数据库中的数据。

谢谢Greg!它看起来很乏味。我在应用程序中有很多片段,它们都从服务器加载数据。还有更简单的方法吗?另外,我检查了当我从MainActivity中的MyListFragment启动另一个活动时,MainActivity的停止(onStop())-没有被销毁。MyListFragment也是如此。应该有一些方法来保存适配器中的数据?如果您的活动只是停止/启动,我很惊讶listview会重新查询所有数据,但情况可能就是这样。即便如此,请注意,在某个时候,操作系统会在后台破坏您的活动。这将发生在你的用户身上。既然您必须处理这种情况,那么您可能应该为它编写整个解决方案。