java–RuntimeException:视图上的视图标记不正确:ViewAgendaItemBinding.bind()方法为null

java–RuntimeException:视图上的视图标记不正确:ViewAgendaItemBinding.bind()方法为null,第1张

概述我有非常简单的代码,应该根据有关DataBinding的几篇文章工作,但由于某种原因,它不是.我正在尝试将RecycleView与Databinding一起使用.classItemViewHolderextendsRecyclerView.ViewHolder{ViewAgendaItemBindingbinding;publicItemViewHolder(ViewitemView){

我有非常简单的代码,应该根据有关DataBinding的几篇文章工作,但由于某种原因,它不是.

我正在尝试将RecycleVIEw与Databinding一起使用.

class ItemVIEwHolder extends RecyclerVIEw.VIEwHolder{    VIEwAgendaItembinding binding;    public ItemVIEwHolder(VIEw itemVIEw) {        super(itemVIEw);        binding = VIEwAgendaItembinding.bind(itemVIEw); //this is line where it's throw an error.    }}

我检查了这个绑定方法的生成版本,它看起来像这样:

public static VIEwAgendaItembinding bind(androID.vIEw.VIEw vIEw, androID.databinding.DataBindingComponent bindingComponent) {        if (!"layout/vIEw_agenda_item_0".equals(vIEw.getTag())) {            throw new RuntimeException("vIEw tag isn't correct on vIEw:" + vIEw.getTag());        }        return new VIEwAgendaItembinding(bindingComponent, vIEw);    }

这很奇怪.因为我没有layout / vIEw_agenda_item_0.这个视图应该使用layout / vIEw_agenda_item,我显然没有设置任何标签.但是,即使我为这个确切的元素设置了这些标记,它仍然无效.

我该怎么做才能解决这个问题?

附:但是,如果我将此代码VIEwAgendaItembinding.bind(itemVIEw)更改为这一个DataBindingUtils.bind(itemVIEw)它正在工作.这是数据绑定库中的问题吗?

解决方法:

数据绑定在编译期间重写您的布局文件,因此它将自动添加该标记.

DataBindingUtils.bind检查视图上是否存在现有绑定并重新使用它.看起来像你在其他地方初始化了该视图的数据绑定.我认为我们应该改变VIEwAgendaItembinding.bind方法来做同样的事情.

总结

以上是内存溢出为你收集整理的java – RuntimeException:视图上的视图标记不正确:ViewAgendaItemBinding.bind()方法为null全部内容,希望文章能够帮你解决java – RuntimeException:视图上的视图标记不正确:ViewAgendaItemBinding.bind()方法为null所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1119469.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存