我正在制作我的第一个安卓应用程序。我想在一个活动中保存一个字符串数组,然后在第二个活动中我想将这些字符串显示为一个列表。我正在使用带有 API 8 的 android 平台 2.2 所以我不能使用 putStringSet()。有什么方法可以将我的数据保存为我的应用程序中的文本文件?然后,每当用户添加新字符串时,我就可以在该文件中添加一个新行。在制作列表视图时,我可以根据新行解析它并制作字符串数组。谢谢你的帮助。
4 回答
使用文件处理。易于初学者使用,高效满足您的目的。
http://developer.android.com/guide/topics/data/data-storage.html#filesInternal
Intent 中有一个方法putStringArrayListExtra("id", ArrayList list)
可以在启动之前使用。然后在从 Intent 启动的 Activity 中,使用getStringArrayList("id")
.
例如:
Intent intent = new Intent(MainActivity.this.getApplicationContext(), NewActivity.class);
intent.putStringArrayListExtra("id", yourArrayList)
MainActivity.this.startActivity(intent);
然后在 NewActivity onCreate() 方法上
ArrayList<String> list = getIntent().getExtras().getStringArrayList("id");
但是您可以使用 putStringArray,或者将 putStringArrayList 包装到一个 Bundle 中。
Bundle 通过 Intents 传递。
-> http://developer.android.com/reference/android/os/Bundle.html#putStringArray(java.lang.String , java.lang.String[])
然后,如果要将其保存为文件,则必须使用此方法:http ://www.java-forums.org/advanced-java/13852-saving-arraylist-file.html
但我认为您更喜欢直接传递字符串列表。
你为什么要使用文件呢?只需检查 sharedPreferences 和 sqliteDb 它可能对您有用..shared 首选项很容易处理