我有一个房间数据库,有一个能容纳用户的表。每个用户都有一个ID和一个名称。我的目标是根据ID更改用户的名称。
我有一个UsersScreen,其中包含一个显示所有用户的LazyColumn。效果很好。每一行都由用户表示。在用户单击时,我通过传递用户的ID向前导航到UpdateUserNameScreen。在这个屏幕中,我调用getUser(id)函数来返回所需的用户。这是我的代码:
fun UpdateUserNameScreen(
userId: Int,
viewModel: UserViewModel = hiltViewModel()
) {
var name
我正在观察一个来自房间数据库查询的实时数据。当我用不同的id更改观察者时,我会删除已经在使用先前ID侦听的观察者,但是当发生数据更改时,来自先前ID的观察者就会开始运行。
下面是对liveData的查询:
@Query("SELECT * FROM table_items WHERE ID=:id ORDER BY ID DESC")
fun getItemsDistinct(id: Long): LiveData<List<Item>>
LiveData:
private val observer: Observer<List<>&
我试图在我的房间数据库中插入值,但应用程序检查没有显示任何内容。我有一个复杂的应用程序结构,有很多表格和一个数据库。除了一个表之外,我能够对所有表执行CRUD操作。我无法辨认出我做错了什么。
代码-->
实体
@Entity(tableName = "add_time")
data class TimeEntity(
@PrimaryKey(autoGenerate = true)
var id: Int? = null,
@ColumnInfo(name = "start_time")
var startTime: S
我正在构建一个聊天应用程序,在这个应用程序中,每个数据都先输入到房间数据库中,然后在数据上插入回收视图,使用新的数据进行更新。它按预期工作,但现在我需要将分页库更新为第3版。
我已经做了所有的改变,但是我被困在了viewmodel课上。我没有得到需要在这个类中进行哪些更改,以使其与paging library version 3一起工作。
这是我的ViewModel
public class Chat_ViewModel extends ViewModel {
public final LiveData<PagedList<ChatEntity_TableCol
我使用nodejs作为我的应用程序的后端。在我的应用程序中,我需要显示对数据库中某些表的实时更改。现在,用户对后端(NodeJS)进行适当的API调用,而后端又进行数据库调用(MySQL)以获取表的当前状态(SELECT* FROM table),每隔2秒($interval)。在我的例子中,API调用是一种高级资源。有没有更好的方法来实现它,从而最小化API调用的数量(只在表或数据库发生更改时才进行调用)?
应用程序内部的构造非常类似于聊天室,但并不完全相同。在这里,人们查看可用的房间(由用户创建),然后加入这些房间中的一个/多个,以更改“与此房间关联的表”(在创建此房间时由其所有者创建)
您好,我有两个关于视图模型和导航组件的实时数据的问题。第一个问题是,当我从包含实时数据的片段A转到片段B,然后从B转到A时,我的列表中的数据会被复制。另一个问题是,我在创建和过滤数据的事件后,在片段中重新调用viewModel.loadList()。 这是我的视图模型 public class HomeViewModel extends ViewModel {
MutableLiveData<ArrayList<HomeResponseModel>> homeLiveData = new MutableLiveData<>();
Array
不知道发生了什么。这在Java中工作得很好,但当我切换到Kotlin时,我真的不知道如何让它工作。我得到了这个错误,但我得到了相同的错误 val mMoment上的Property getter or setter required:Moment class SquareViewHolder(v: CardView, viewModel: BarreViewModel) : RecyclerView.ViewHolder (v) {
val mImage: ImageView
val by lazy mMoment: Moment
init {
因此,我在viewModel中有一个mutableStateListOf var childTravellersList = mutableStateListOf<TravellersDetails>() TravellersDetails是一个具有名为error的字段的数据类。 此childTravellersList在UI中用作: val list = remember{viewModel.childTravellersList}
LazyColumn(state = lazyColumnState) {
itemsIndexed(list) { index, it
我想知道如何在房间数据库中求和值。
假设我在房间数据库中插入了这个值(10,000),我想要向数据库(20,000)插入新值,我希望新值是旧值之和,而不是替换它。
我怎么能这么做呢?
代码示例:
数据库表:
@entity
class sum (
id : int ,
value : Long )
Dao :
@insert (onConflict = OnConflictStrategy.REPLACE)
suspend fun insert (model :sum)
what shoud i use instead of above insert .
@Query(