RecyclerView.Viewholder中添加Fragment

RecyclerView的Viewholder中理论上不推荐添加fragment的,不过有时业务复用时,还是会遇到这样的场景。

这里会有一个坑,fragment的add,replace依赖view的id,如果直接使用viewholde的xml中的id且有多个viewholder存在时,会出现多个fragment被加到同一个view上的问题。

这时可以通过View.setId的方法手动更改id,使得每个容器的id都不同,就可以规避这个问题。

ID的创建可以使用官方提供的View.generateViewId方法(API 17),低版本可以把逻辑移出来使用。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容