私はアンドロイド開発が初めてです。ボタンが 2 つある単純な経費管理プログラムを作成しています。1つは受信者、日付と金額の記録を保存し、他のボタンはこれらの記録を表示します。私が書いたメインコードの一部は次のとおりです。
public class database {
public static final String DBNAME = "dbexpense";
SQLiteDatabase db;
DBHandler handler;
public database(Context ctx) {
handler = new DBHandler(ctx);
}
class DBHandler extends SQLiteOpenHelper {
public DBHandler(Context ctx) {
super(ctx, DBNAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("Create table expenses(id integer primary key autoincrement,from text,dated date, amount number );");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("drop table if exists expenses");
onCreate(db);
}
}
public void open() {
db = handler.getWritableDatabase();
}
public void close() {
db.close();
}
public boolean saveRecord(String from, Date dated, Number amount)
{
ContentValues cv=new ContentValues();
cv.put("From", from);
cv.put("Dated", dated);
cv.put("Amount", amount);
return db.insert("expenses", "", cv)>0;
}
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editText2"
android:inputType="date">
</EditText>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editText3"
android:inputType="number"></EditText>
私のxmlファイルには、日付と番号の編集テキストフィールドがあります。これはエラーを示しています: タイプ ContentValues のメソッド put(String, String) は引数 (String, Date) には適用できず、タイプ ContentValues のメソッド put(String, String) は引数 (String,番号)。他に保存する方法はありますか?