问题描述:本以为RecyclerView已经用的很熟练了,与scrollview嵌套显示,滑动冲突,RecyclerView嵌套RecyclerView出现滑动卡顿等异常都有遇到过,但没想到今天还是遇到了一个很奇怪的问题:RecyclerView宽度显示不全。
相关问题经验回顾:之前也遇到过一回这样的情况,不过那次很简单排除起来,那次是无意中把把RecyclerView的layout_width属性写成了wrap_content,改写成match_parent就可以了,但这次遇到了相同的问题,再按照上次的解决思路查找问题排除,但没有上次那样的代码疏忽,一时间还真是不知道到底是哪里出现的问题了,后来Google搜索了一番,找到了问题的解决方案,一个真的是平时被我疏忽的一个知识点。
问题出现的原因是在RecyclerView的adapter的onCreateViewHolder函数里面
出现问题之前的代码:
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
var itemView = LayoutInflater.from(actiity).inflate(R.layout.homefra_reylerview_itemview,null)
return HomeFraItemHolder(itemView)
}
正确解决问题的代码:
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
var itemView = LayoutInflater.from(actiity).inflate(R.layout.homefra_reylerview_itemview, parent, false)
return HomeFraItemHolder(itemView)
}
然后再运行起来就没有那个奇怪的异常了!遇到的坑都是经验,记录下来,以防下次再遇到时蒙头!如果有写的不到之处欢迎留言指出,谢谢!