Android中利用SQLite数据库实现一个简单的记事本 ,详细写出代码
时间: 2024-03-06 09:49:08 浏览: 126
利用sqlite实现最简单的android记事本
5星 · 资源好评率100%
好的,以下是一个简单的Android记事本应用,使用SQLite数据库来存储笔记的标题、内容和日期。
1. 创建一个新的Android项目,并在build.gradle文件中添加SQLite依赖:
```
implementation 'androidx.sqlite:sqlite:2.1.0'
```
2. 在MainActivity中创建一个SQLiteOpenHelper类来创建和管理数据库:
```java
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "notes.db";
private static final int DATABASE_VERSION = 1;
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE notes (id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT, content TEXT, date TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS notes");
onCreate(db);
}
}
```
3. 在MainActivity中实现增删改查功能:
```java
public class MainActivity extends AppCompatActivity {
private DatabaseHelper dbHelper;
private SQLiteDatabase db;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dbHelper = new DatabaseHelper(this);
db = dbHelper.getWritableDatabase();
// 添加笔记
ContentValues values = new ContentValues();
values.put("title", "note title");
values.put("content", "note content");
values.put("date", "note date");
db.insert("notes", null, values);
// 删除笔记
db.delete("notes", "id = ?", new String[] { "1" });
// 编辑笔记
values.put("title", "new title");
values.put("content", "new content");
db.update("notes", values, "id = ?", new String[] { "1" });
// 查看笔记
Cursor cursor = db.query("notes", null, null, null, null, null, null);
while (cursor.moveToNext()) {
String title = cursor.getString(cursor.getColumnIndex("title"));
String content = cursor.getString(cursor.getColumnIndex("content"));
String date = cursor.getString(cursor.getColumnIndex("date"));
Log.d("Note", title + " " + content + " " + date);
}
cursor.close();
}
}
```
4. 在activity_main.xml中添加一个EditText和一个Button来让用户输入和保存笔记:
```xml
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter note here" />
<Button
android:id="@+id/save_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Save"
android:onClick="saveNote" />
```
5. 在MainActivity中实现saveNote()方法来保存笔记:
```java
public void saveNote(View view) {
EditText editText = (EditText) findViewById(R.id.edit_text);
String title = "Note " + System.currentTimeMillis();
String content = editText.getText().toString();
String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
ContentValues values = new ContentValues();
values.put("title", title);
values.put("content", content);
values.put("date", date);
db.insert("notes", null, values);
editText.setText("");
}
```
这样,一个简单的Android记事本应用就完成了,可以让用户添加、删除、编辑和查看笔记。
阅读全文