如何解决我有显示来自 XML 字符串的项目的微调器我想使用 kotlin 从房间数据库中获取项目吗?
我已经有表命名的类,我在其中存储了带有 Id 的类。我想在从微调器中选择课程时将学生添加到学生表中。微调器应该添加我已经添加的类。
@InternalCoroutinesApi
class Classwiseviewmodel(application: Application): Androidviewmodel(application) {
val readAllData: LiveData<List<Classwise>>
private val repository: ClasswiseRepository
init {
val classsDao = Userdatabase.getDatabase(
application
).classsDao()
repository = ClasswiseRepository(classsDao)
readAllData = repository.readAllData
}
fun addClasss(classwise: Classwise){
viewmodelScope.launch(dispatchers.IO) {
repository.addClasss(classwise)
}
}
}
复制代码
class ClasswiseRepository(private val classwiseDao: ClasswiseDao) {
val readAllData: LiveData<List<Classwise>> = classwiseDao.readAllData()
suspend fun addClasss(classwise: Classwise){
classwiseDao.addClasss(classwise)
}
suspend fun updateClassst(classwise: Classwise){
classwiseDao.updateClasss(classwise)
}
suspend fun deleteClasss(classwise: Classwise){
classwiseDao.deleteClasss(classwise)
}
}
Dao 代码
@Dao
interface ClasswiseDao {
@Insert(onConflict = OnConflictStrategy.IGnorE)
suspend fun addClasss(classwise: Classwise)
@Update
suspend fun updateClasss(classwise: Classwise)
@Delete
suspend fun deleteClasss(classwise: Classwise)
@Query("DELETE FROM class_table")
suspend fun deleteallClassses()
@Query("SELECT * FROM class_table ORDER BY CID ASC")
fun readAllData(): LiveData<List<Classwise>>
}
Fragment 中的 Spinner 代码
view.classspinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
override fun onItemSelected(
parent: AdapterView<*>?,view: View,position: Int,id: Long
) {
// do something upon option selection
}
override fun onnothingSelected(parent: AdapterView<*>?) {
// can leave this empty
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。