问题标签 [mutablelivedata]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 找不到属性“android:text”的设置器
我有:
使用activity.java:
和我的视图模型:
我收到以下错误:
msg:在 android.widget.TextView 上找不到参数类型为 android.arch.lifecycle.MutableLiveData 的属性“android:text”的设置器。
怎么了?
android-room - 从 ViewModel 和 Repository 向 Android Room Dao SQL Query 传递多个过滤器
我正在使用以下内容将数据库行获取到我的适配器,但是我想使用“LIKE”和/或“WHERE”以及基本上所有 sql 查询过滤器类型从多重过滤的单个查询中返回行,我可以通过一个过滤器MutableLiveData<String>()
;
最终结果就像...
如下所示,目前方式只能通过一个过滤器变量。
视图模型类
存储库类
道接口
我尝试过传递基本的 var 字符串但没有运气,似乎只有MutableLiveData
通过ViewModel
&将变量传递给 Dao 的方法Repository
android - 即使在 postValue() Kotlin 之后 MutableLiveData ArrayList 也是空的
我现在卡住了,目前想知道为什么我的可变数组列表返回 null,即使它正在使用 postvalue() 进行更新。我尝试使用 Toast 显示它,它显示 [] 我认为它是空的。它之间没有空间,所以看起来像一个盒子。为了显示文本,我也做了 toString() 。我将如何解决这个问题?
这是我的主要活动:
视图模型:
分段:
顶部区域:
底部区域:
android - 如何设置 LiveData> 到 MutableLiveData>?
- >?
我正在Android中开发,并尝试LiveData<List<customType>>
通过以下功能获得。
我创建了一个如下参数:
如何设置getDataList()
为customLiveData
提前致谢。
android - 如何在三个不同的片段上观察来自实时数据 android 的数据
我有我的活动MainActivity.kt
。
还有一个 ViewModelMainActivityViewModel.kt
我想观察我的 3 个不同片段的实时数据。
但是我的观察者只处理活动而不是片段。
android - 具有来自 LiveData 的初始值的 MutableLiveData
我有一种情况,我有一个页面的视图模型,该页面基于一些输入数据(id)呈现,其中的字段是从我的存储库初始化但可以由用户编辑。
我的存储库功能非常简单:
我希望我的视图模型可以重新用于不同的帐户,所以我有一个LiveData<Long>
将使用帐户 ID 进行设置的模型。
在我的视图模型中,我想公开一个name
绑定到EditText
视图的可变字段。该字段应由存储库中的数据初始化。如果我使用简单的不可编辑绑定,我可以让单向数据绑定工作:
但是,我无法使用它绑定@={viewModel.name}
它,因为它抱怨它不知道如何设置值。我尝试编写一个辅助类,这样使用底层MediatorLiveData
来设置值,但看起来我的 onChanged 回调从未被调用:
我更新了视图模型如下:
但是,当我这样做时,我的EditText
字段永远不会设置数据库中的值,这是有道理的,因为onChanged
回调永远不会在我MediatorLiveData
的 in 中调用MutableLiveDataWithInitialValue
。
这似乎是一个很常见的用例,所以我想知道我在搞砸什么?
android - Android - LiveData 未更新
在我的片段中,我观察到 dbQuestionsList 字段:
在我的片段中,我有几个按钮,根据按下哪个按钮,我调用 viewModel 上的方法,将设置为标签的字符串传递给按钮。
我的视图模式:
存储方法:
道法:
当我按下按钮时,viewModel 方法会被调用,参数应该用于通过搜索房间数据库来更新 LiveData,但没有任何原因会更新。数据库不为空,因此没有理由返回 null 并且不触发主片段中的观察者。但是当我在我的 viewModel 中这样做时:
在我硬编码参数的地方,房间将返回列表并且片段中的观察者将被触发,所以它就像那样工作,但是当按下按钮时传递参数时不起作用,请解释一下,因为这件事没有意义。我尝试使用可变的实时数据,使用 .setValue 和 .postValue 但没有任何效果。
android - 可变实时数据值在创建片段时更新
我已经用视图模型装配了一个简单的登录片段。这是片段:
这是我的视图模型:
当尝试登录失败时,这会起作用并注册对字符串状态的更改,但是它还会在加载片段时提交 onChange() ,导致在创建片段时它们实际输入任何内容之前,快餐栏出现在 UI 中。如何在不触发 onChange() 的情况下初始化视图状态?
android - 无法从 Fragment 中的 ViewModel 观察 LiveData
我有一个RecyclerView
在我ViewPager
的一个Fragment
。该RecyclerView
节目的数据是从服务器获取的。它通常可以工作,但我无法使用ViewModel
and实现相同的功能LiveData
,因为livedata.observe
当livedata
从ViewModel
.
这是我的MonthlyOrderViewModel.java类的源代码
DefaultScheduler
是一个Scheduler
默认处理AsyncScheduler
. 这是我的Scheduler.kt类的源代码
最后,我正在尝试使用以下方法观察我的片段onCreateView
方法的变化:
我尝试调试它,发现改造后获取数据没有问题。但是observe
当我尝试在我的片段中使用它们时,该方法永远不会被调用。
请建议我如何解决这个问题?任何帮助,将不胜感激。
android - 调用 MutableLiveData 网络服务 agine 来更新列表
我在我的项目中使用 MVVM 结构。正如您在代码中看到的那样,我有一个带有列表的主要片段观察了一个 Web 服务
片段:
查看模型:
主页存储库:
我想添加 SwipeRefreshLayout 来更新主列表。再次调用 Web 服务并更新列表的正确方法是什么?谁能帮我?