2024/4/6

跟教程写todoapplication

所需models和respository:

package com.example.to_do_application.data.models

enum class Priority {
HIGH,
MEDIUM,
LOW
}

package com.example.to_do_application.data.models

import android.os.Parcelable
import androidx.room.Entity
import androidx.room.PrimaryKey
import kotlinx.parcelize.Parcelize

@Entity(tableName = "todo_table")
@Parcelize
data class ToDoData(
@PrimaryKey(autoGenerate = true)
var id: Int,
var tile: String,
var priority: Priority,
var description: String
):Parcelable

package com.example.to_do_application.data.respository

import androidx.lifecycle.LiveData
import com.example.to_do_application.data.ToDoDao
import com.example.to_do_application.data.models.ToDoData

class ToDoRepository(private val toDoDao: ToDoDao) {
val getAllData: LiveData<List<ToDoData>> = toDoDao.getAllData()
val sortByHighPriority: LiveData<List<ToDoData>> = toDoDao.sortByHighPriority()
val sortByLowhPriority: LiveData<List<ToDoData>> = toDoDao.sortByLowPriority()

suspend fun insertData(toDoData: ToDoData){
toDoDao.insertData(toDoData)
}

suspend fun updateData(toDoData: ToDoData){
toDoDao.updateData(toDoData)
}

suspend fun deleteItem(toDoData: ToDoData){
toDoDao.deleteItem(toDoData)
}

suspend fun deleteAll(){
toDoDao.deleteAll()
}

fun searchDatabase(searchQuery: String): LiveData<List<ToDoData>>{
return toDoDao.searchDatabase(searchQuery)
}
}







posted @ 2024-04-06 19:53  Hbro  阅读(16)  评论(0)    收藏  举报