Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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 将字符串[]保存到要在重新创建活动时使用的绑定中_Android - Fatal编程技术网

Android 将字符串[]保存到要在重新创建活动时使用的绑定中

Android 将字符串[]保存到要在重新创建活动时使用的绑定中,android,Android,当我的活动第一次运行时,它会下载一些url字符串并将其设置为 字符串列表 public String [] myRemoteImages = {imageUrl,imageUrl2,imageUrl3,imageUrl4}; imageUrl的内部是4个url,它们被下载并设置为变量 当活动被关闭或销毁时,我如何将这些url保存到它们的变量中,以便在活动被销毁时它们不会被擦除 我是否可以将其保存在一个捆绑包中,然后在RestoreInstanceState上将其取出?如果您的活动被破坏,您

当我的活动第一次运行时,它会下载一些url字符串并将其设置为

字符串列表

public   String [] myRemoteImages = {imageUrl,imageUrl2,imageUrl3,imageUrl4};
imageUrl的内部是4个url,它们被下载并设置为变量

当活动被关闭或销毁时,我如何将这些url保存到它们的变量中,以便在活动被销毁时它们不会被擦除


我是否可以将其保存在一个捆绑包中,然后在RestoreInstanceState上将其取出?

如果您的活动被破坏,您将无法保存数据,但您可以使用SharedReferences来保存一些数据,例如字符串:

如果要在活动重新创建期间保存这些字符串,请使用以下方法

public String [] myRemoteImages = /* ... */;
private static final String KEY_URLS = "urls";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if (savedInstanceState != null) {
        myRemoteImages = savedInstanceState.getStringArray(KEY_URLS);
    }
 }

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putStringArray(KEY_URLS, myRemoteImages);
}
如果要在用户关闭应用程序时保持这些字符串的活动状态,最好使用
SharedReferences


还原活动时将调用onRestoreInstanceState()。这意味着此活动在配置更改后或包含此活动的进程被终止并重新启动后正在重新创建。因此,如果您想在应用程序关闭前保存状态,请使用
onPause()
/
onResume()
方法来保存和恢复它。

那么我应该按照您上面所述的方式来做吗?因为我尝试过,一旦应用程序被终止,上面的方法将不会重新加载字符串[]。我希望在活动终止时能够保存字符串[]。当您获取或更改这些字符串时,您可以将其保存到“SharedPreference”。例如,在
onCreate()
中,您可以尝试加载这些字符串。主要的想法是不要等到你的应用程序被杀死,因为在这种情况下你将无法做任何事情。