首页 > 基础资料 博客日记
【Harmony OS】【JAVA UI】使用ListContainer与BaseItemProvider时,删除一行item,position没有更新
2023-07-24 16:51:44基础资料围观629次
本篇文章分享【Harmony OS】【JAVA UI】使用ListContainer与BaseItemProvider时,删除一行item,position没有更新,对你有帮助的话记得收藏一下,看Java资料网收获更多编程知识
鸿蒙开发中,遇到不少小问题,今天,就来和大家分享一下我遇到的一个小问题吧,希望对大家有所帮助
【问题描述】
在做鸿蒙应用开发时,使用ListContainer与BaseItemProvider,当点击item中的组件,删除一行数据,并且调用刷新数据方法,报错了。
有使用getItemComponentType()方法使用多种item布局的方式,但是当我删除某一个item后,并且调用notifyDataChange方法刷新ListContainer,直接就报错说xxx组件空了。
那么如何正确使用ListContainer组件实现不同布局的复用,且在删除或插入数据之后调用getItemComponentType不会引起报错?
1、列表中第二行显示了一张图片,第三行显示的是三张图片;
2、删除List数据中对应第二行的数据,并且调用notifyDataChanged刷新列表;
3、原本的第二行被删除,第三行来到了第二行,但却变成了只显示一张图片,使用了一张图片的布局类型;
4、我猜测是因为布局复用出了问题,但却是根据官方推荐的写法来做的,这该如何解决呢?
【解决方案】
这个是由于是temp组件的复用导致的,可以定义一个Holder类来进行复用,可以参考官方示例代码中SettingHolder的使用:

文章来源:https://www.cnblogs.com/developer-huawei/p/16494436.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- 金蝶云苍穹,新手初学者小白PC端java插件开发教学示例
- PriorityQueue的秘密:堆结构的高效应用与实现原理
- Keycloak~infinispan中MergedUpdate中lifespanMs和maxIdleTimeMs
- vivo 微服务架构实践之 Dubbo 性能优化
- 剑指offer-62、⼆叉搜索树的第k个结点
- 剑指offer-64、滑动窗⼝的最⼤值
- 10340_基于Springboot的游戏网站
- Spring 的西西弗斯之石:理解 BeanFactory、FactoryBean 与 ObjectFactory
- 10341_基于Springboot的珠宝销售网站
- 剑指offer-63、数据流中的中位数



