在Android Studio中,我在strings.xml
中定义了一个字符串数组:
<string-array name="item_codes">
<item>FRE</item>
<item>PAR</item>
<item>PC</item>
<item>SUN</item>
<item>CTRL</item>
</string-array>
当用户运行应用程序时,我希望能够向此数组添加新元素,以便在用户下次打开应用程序时保存所有元素。
所以:
1)Android应用程序在运行时是否有办法向<item>
添加新的<string-array>
?
2)或者,是否有其他方法可以保存数组元素,以便在重新启动应用程序时再次访问它们?
提前感谢您的帮助!
答案 0 :(得分:2)
没有任何方法可以动态添加字符串资源,因为这些资源被编译为只读二进制文件。所以1)的答案通常是否为。
您正在寻找的是一种保存数据的方法,可以通过共享偏好,文件或通过数据库<来完成/ strong>例如SQLite。
使用文件将是最复杂的,因为基本上共享首选项和数据库最终都会将数据保存到文件中,因此较低的杠杆级别进程是使用共享首选项或数据库所固有的。
SQLite可能是首选的数据库,因为它几乎普遍内置于Android设备(嵌入式),而且许多替代方案都是基于客户端的,因此不需要服务器。
共享首选项最适合特定项目集,而数据库在处理可变数据量时最有利。
有许多使用共享首选项和SQLite数据库的教程/指南。使用共享首选项可能是最简单的限制使用,因此这可能是有意义的: - Android Shared preferences example [closed]