现在出现这个错误:Type mismatch: inferred type is View? but View was expected

动态 未结 0 91
小小草
小小草 LV1 2023年9月23日 23:40 发表
这个错误是因为findContainingViewHolder()方法返回的是RecyclerView.ViewHolder?类型,可能为空,需要进行判空处理。修改代码如下: ``` override fun onLayoutChildren(recycler: RecyclerView.Recycler?, state: RecyclerView.State?) { super.onLayoutChildren(recycler, state) var totalHeight = 0 for (i in 0 until childCount) { val child = mRvChat.findContainingViewHolder(getChildAt(i))?.itemView if (child != null) { totalHeight += child.height } } if (totalHeight > height) { mRvChat.postDelayed({ mRvChat.smoothScrollToPosition(itemCount - 1) }, 1000) } } ``` 这样就可以避免Type mismatch: inferred type is View? but View was expected的问题了。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复