草庐IT

getItemViewType

全部标签

android - 为什么食谱在似乎没有必要时提倡覆盖 getItemViewType 和 getViewTypeCount?

我一直在研究CommonswareAndroidProgrammingTutorials,在教程5中,额外学分2,挑战是根据对象的"typename"(餐厅的“type”属性,它是一个字符串)。因此,它建议在自定义ArrayAdapter中覆盖getItemViewType和getViewTypeCount。此外,androiddocs及其他onlinerecipes或blogposts建议相同。在这种情况下,遵循这个秘诀并覆盖这两个方法可以正常工作,但会导致基于检查该餐厅“类型”属性值的冗余逻辑。例如(请注意,此适配器是内部类,restaurants是声明为外部Activity成员的

android - 当在 Recycler Adapter 中调用 getItemCount 和 getItemViewType 方法时

我在stackoverflow中看到了类似的问题,但他们没有对我的问题给出明确的答案。在阅读我的完整问题之前,不要将其标记为重复。我看到了this链接,this,和this也。感谢您花时间阅读本文。我在源代码下面给出了我的三个问题,请看一下。我会让它变得简单。我正在尝试在RecyclerAdapter中使用twoViewHolder,我将在ViewPager中将其用于TabLayout。ViewHolder都具有不同的Xml和不同的元素(即textview、imageview等。)但在其中遇到了一些困惑。我按如下方式实现了我的RecyclerView适配器类publicclassMyA

android - ListView getItemViewType() 的复杂示例

我有一个ListView,它很复杂,因为可能存在4种View类型的场景,例如{书籍、电影、音乐CD、音乐会}目前,为了决定膨胀什么对象等,我得到了与列表行相关的项目。然后,我将在对象的类型字段上执行switch()。这让我在getView()中有很多代码和繁重的工作。我说getItemViewType()用于返回当前项目的正确View类型是否正确?我在哪里可以找到使用这种方法的ListAdapter示例?注意:这是为了让我的ListView变得平滑,它现在非常缓慢。谢谢编辑:我的适配器publicclassMyListAdapterextendsBaseAdapterimplement

android - RecyclerView onBindViewHolder 仅在 getItemViewType 更改时调用

我有一个具有多种View类型的View。滚动时onBindViewHolder仅在getItemViewType更改值时调用。这会导致我的列表项无法正确更新。这是一个错误吗?或者我在这里做错了什么。从新的recyclerView类来看,这似乎很奇怪。这是我的适配器:packagese.davison.smartrecycleradapter;importandroid.content.Context;importandroid.support.v7.widget.RecyclerView;importandroid.util.Log;importandroid.util.SparseI

android - ArrayAdapter 的 getViewTypeCount 和 getItemViewType 方法

谁能简单地解释一下ArrayAdapter的getViewTypeCount()和getItemViewType()方法的用法? 最佳答案 这些处理您希望不同行的不同类型View的情况。例如,在联系人应用程序中,您可能希望偶数行在左侧有图片,而奇数行在右侧有图片。在这种情况下,您将使用:@OverridepublicintgetViewTypeCount(){return2;}@OverridepublicintgetItemViewType(intposition){returnposition%2;}框架使用您的View类型来决