Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.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 为什么没有';t工作(字符串数组)?_Android_Arrays_String - Fatal编程技术网

Android 为什么没有';t工作(字符串数组)?

Android 为什么没有';t工作(字符串数组)?,android,arrays,string,Android,Arrays,String,您好,我想通过此方法向字符串数组添加新字符串,但它不起作用,因为当我启动新活动时,favaorites数组不会更新。为什么? Resources res = getResources(); String[] favorites = res.getStringArray(R.array.favorites); String[] planets = res.getStringArray(R.array.planets_array); String[] temp = new S

您好,我想通过此方法向字符串数组添加新字符串,但它不起作用,因为当我启动新活动时,favaorites数组不会更新。为什么?

Resources res = getResources();
    String[] favorites = res.getStringArray(R.array.favorites);
    String[] planets = res.getStringArray(R.array.planets_array);
    String[] temp = new String[favorites.length+1];
    System.arraycopy(favorites,0,temp,0,favorites.length);
    temp[favorites.length] = planets[mCounter];
    favorites = temp;

在您的情况下,您可以使用SharedReferences将字符串存储到其中。无需数组赋值,这是一种更干净的方法。以下是一些帮助您入门的链接:


  • 为了解决您的问题,您应该创建一个包含所有这些属性的SQLite数据库。然后,您应该从游标中检索它们(在查询数据库之后),并根据需要使用结果


    另一个注意事项是,无法添加到已定义的R.array.*中,因为它是预编译的资源。

    您需要提供更多信息。在哪里显示此字符串数组?除了mCounter是未知值之外,代码还可以。您如何知道收藏夹尚未更新?你尝试过什么?McCounter是一个seekbar进程,它不是一个未知的值。我猜这不起作用,因为完成活动后收藏夹不会在文件中更改,并且当我启动使用收藏夹数组的活动时,除了我手动保存的字符串外,没有其他字符串。有没有办法将此数组永久保存在字符串中?资源文件在android中无法更改。将收藏夹字符串数组复制到其他数组中并使用它。