layoutinflater.inflate()
和layoutinflater.from()
有什么区别?
为什么在layoutinflater.from()
的{{1}}中使用了onCreateViewHolder()
?
RecyclerView
中getItemCount()
的目的是什么?
答案 0 :(得分:1)
layoutinflater.inflate用于通过已经包含活动上下文的活动或片段来扩充xml布局
layoutinflater.from用于获取要扩充xml布局的布局inflater的上下文(例如,访问活动上下文所需的适配器类中的xml资源文件)
答案 1 :(得分:1)
layoutinflater.inflate vs layoutinflater.from
Here's a link to the documentation
LayoutInflater.from将从给定的上下文返回一个LayoutInflater对象。
layoutinflater.inflate将从资源中膨胀一个新视图,并允许您将它附加到父视图。
为什么在Recycler视图中的onCreateViewHolder方法中使用layoutinflater.from?
这样做是为了让你可以获得对你的上下文的layoutinflater的引用(即你的活动)并使用该引用然后调用inflate()方法,你可以在其中指定recyclerview项目的布局xml的id。
在Recycler视图中getItemCount方法的用途是什么?
Check out the documentation
如果您没有直接引用支持适配器的数据集,则此方法很有用。
答案 2 :(得分:1)
layoutinflater.inflate
和layoutinflater.from
之间的区别是什么?
在语义上它们是相同的,只是syntactic sugar。
为什么
layoutinflater.from
用于RecyclerView中的onCreateViewHolder
方法?
在onCreateViewHolder
方法中,您应该实例化一个占位视图,稍后将用于显示一行。如果要从xml
文件实例化行视图,则应该对提供视图的文件进行充气。通胀过程是通过LayoutInflater
对象完成的。如果您不想使用xml
,那么您将不再需要这种充气效果。
getItemCount
中recyclerView
方法的目的是什么?
如果没有这个,那个回收者视图如何知道这个列表会有多少行? Recycler视图首先调用此方法,然后根据它调用onCreateViewHolder
和getItem
方法。