#java #android
#java #Android
Вопрос:
как и название, я не знаю, как сделать заметку удаляемой или способной к изменению. после того, как я нажму кнопку сохранить заметку, она останется такой и не может быть изменена или удалена.
это основной код активности, который я пишу
package com.example.test1;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.CalendarView;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private mySQLiteDBHandler dbHandler;
private EditText editText;
private CalendarView calendarView;
private String selectedDate;
private SQLiteDatabase sqLiteDatabase;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText = findViewById(R.id.editText);
calendarView = findViewById(R.id.calendarView);
calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(@NonNull CalendarView view, int year, int month, int dayOfMonth) {
selectedDate = Integer.toString(year) Integer.toString(month) Integer.toString(dayOfMonth);
ReadDatabase(view);
}
});
try {
dbHandler = new mySQLiteDBHandler(this, "CalendarDatabase", null, 1);
sqLiteDatabase = dbHandler.getWritableDatabase();
sqLiteDatabase.execSQL("CREATE TABLE EventCalendar(Date TEXT, Event TEXT)");
}
catch (Exception e){
e.printStackTrace();
}
}
public void InsertDatabase (View view){
ContentValues contentValues = new ContentValues();
contentValues.put("Date",selectedDate);
contentValues.put("Event",editText.getText().toString());
sqLiteDatabase.insert("EventCalendar",null,contentValues);
}
public void ReadDatabase(View view){
String query = "Select Event from EventCalendar where Date =" selectedDate;
try {
Cursor cursor = sqLiteDatabase.rawQuery(query,null);
cursor.moveToFirst();
editText.setText(cursor.getString(0));
}
catch (Exception e){
e.printStackTrace();
editText.setText("");
}
}
}
было бы неплохо, если бы я мог просто нажать кнопку 1 вместо выделенной кнопки, чтобы удалить сохраненную заметку.
Комментарии:
1. Я советую вам использовать базу данных Room, и это будет проще, чем sqlite.