0
私はちょうどRoom-Androidから始まります。Room Android - 浮動小数点型、整数型、倍精度型、...の配列。
私はフィールドの1が配列である私のモデルの一つ存続してみてください:
float[] values;
私は、コンパイル時にこのエラーを得た:
Error: Cannot figure out how to save this field into database.
You can consider adding a type converter for it.
私は型コンバータ作成:
をpublic static class ConverterFloatToString {
@TypeConverter
public String JSONArrayfromFloatArray(Float[] values) {
JSONArray jsonArray = new JSONArray(Arrays.asList(values));
return jsonArray.toString();
}
@TypeConverter
public float[] JSONArrayToFloatArray(String values) {
try {
JSONArray jsonArray = new JSONArray(values);
float[] floatArray = new float[jsonArray.length()];
for (int i = 0; i < jsonArray.length(); i++) {
floatArray[i] = Float.parseFloat(jsonArray.getString(i));
}
return floatArray;
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
}
と私はフィールドに割り当てられた:
@TypeConverters(ConverterFloatToString.class)
float[] values;
しかし、私はまだ同じエラーが発生します。
Cannot figure out how to save this field into database.
You can consider adding a type converter for it.
何が間違っていますか?