Android 绑定LiveData<;字符串>;查看文本
我正在尝试将LiveData绑定到TextView的值 我成功地将viewmodel设置为变量,但TextView不显示任何文本 这是我的XML代码:Android 绑定LiveData<;字符串>;查看文本,android,android-databinding,android-livedata,Android,Android Databinding,Android Livedata,我正在尝试将LiveData绑定到TextView的值 我成功地将viewmodel设置为变量,但TextView不显示任何文本 这是我的XML代码: <TextView android:layout_height="wrap_content" android:layout_width="match_parent" android:gravity="center" android:text='@{viewmodel.getTe
<TextView
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:gravity="center"
android:text='@{viewmodel.getText("TI_001")}'/>
问题可能是您没有告诉数据绑定要附加到哪个生命周期:
binding.setLifecycleOwner(yourLifeCycleOwner)
如果要将LiveData
用作数据绑定,则需要执行此操作
官方文档:问题可能是您没有告诉数据绑定要附加到哪个生命周期:
binding.setLifecycleOwner(yourLifeCycleOwner)
如果要将LiveData
用作数据绑定,则需要执行此操作
官方文档:你能在你的问题中添加getText函数吗?我编辑了我的问题并加入了getText方法。什么是
textDao.findById(id)代码>正在做什么?@lelloman编辑了我的文章。好吧,那么有两个问题:1)如果你尝试不带数据绑定的查询,它会返回什么吗?2) 你确定你在观察实时数据吗?如果您从ViewModel的String属性在TextView上设置文本,会发生什么情况?您看到文本了吗?请将getText函数添加到您的问题中。我编辑了我的问题并包含了getText方法。什么是textDao.findById(id)代码>正在做什么?@lelloman编辑了我的文章。好吧,那么有两个问题:1)如果你尝试不带数据绑定的查询,它会返回什么吗?2) 你确定你在观察实时数据吗?如果您从ViewModel的String属性设置TextView上的文本,会发生什么情况?您看到文本了吗?实际上我已经在这样做了。更新了我的问题。附言:很抱歉这么长时间不活动。实际上我已经在做了。更新了我的问题。附言:很抱歉长期不活动。
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
mBinding = DataBindingUtil.inflate(inflater, R.layout.fragment_map, container, false);
mBinding.setLifecycleOwner(this);
return mBinding.getRoot();
}
binding.setLifecycleOwner(yourLifeCycleOwner)