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)
}
}

浙公网安备 33010602011771号