我想在我的应用程序中保存默认对象(无法动态添加) Atm 我已经这样做了:
<integer-array translatable="false" name="batterySize">
<item>18650</item>
<item>18650</item>
<item>18650</item>
<item>18650</item>
<item>18650</item>
<item>18650</item>
<item>18650</item>
<item>18650</item>
</integer-array>
<integer-array translatable="false" name="batteryCapacity">
<item>2100</item>
<item>3000</item>
<item>2900</item>
<item>2100</item>
<item>3100</item>
<item>1600</item>
<item>2100</item>
<item>2600</item>
</integer-array>
<string-array translatable="false" name="batteryVoltage">
<item>3.7</item>
<item>3.7</item>
<item>3.7</item>
<item>3.7</item>
<item>3.7</item>
<item>3.6</item>
<item>3.6</item>
<item>3.6</item>
</string-array>
并获取此数据
int[] batterySize =getResources().getIntArray(R.array.batterySize);
int[] batteryCapacity = getResources().getIntArray(R.array.batteryCapacity);
String[] batteryVoltage = getResources().getStringArray(R.array.batteryVoltage);
并将这个原始数组转换为我的对象数组
List<Battery> batteryList = new ArrayList<>();
for(int i=0;i<batterySize.length;i++){
batteryList.add(new Battery(batterySize,batteryCapacity,batteryVoltage));
}
有什么方法可以像这样存储这个对象:
<Battery>
<battery_size>18650</battery_size>
<battery_capacity>3100</battery_capacity>
<battery_voltage>3.7</battery_voltage>
</Battery>
<Battery>
<battery_size>18650</battery_size>
<battery_capacity>2900</battery_capacity>
<battery_voltage>3.6</battery_voltage>
</Battery>
?
最佳答案
我希望,最简单的解决方案是将所有三个电池参数放入带有分隔符的一个字符串中,例如
<string-array translatable="false" name="batteries">
<item>18650;2900;3.6</item>
</string-array>
之后,为 Battery 类创建一个构造函数来接受该字符串作为输入,并将其拆分并解析以构造一个对象。
关于java - Android我自己的XML资源对象类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33744616/