gpt4 book ai didi

android - 如何优化具有不同项目布局的 ListView

转载 作者:行者123 更新时间:2023-11-29 22:32:42 25 4
gpt4 key购买 nike

在我的 ListView 中,我有不同布局的项目,事实上它们几次使用一个子布局。我不能使用 getViewTypeCount() 和 getItemViewType(),因为我不知道子布局将被使用多少次。是否可以以某种方式优化 getView() 方法并使用它的 convertView 参数,或者我是否必须每次都膨胀 View ?

最佳答案

既然您知道您将拥有多少种布局类型 - 就可以使用这些方法。

getViewTypeCount() - 此方法返回列表中有多少行类型的信息

getItemViewType(int position) - 返回您应该根据位置使用哪种布局类型的信息

然后仅当布局为 null 时才扩充布局,并使用 getItemViewType 确定类型。

this教程以获取更多信息。

更新:

为了实现您在评论中描述的结构优化,我建议:

  • 在名为 ViewHolder 的对象中存储 View 。这会提高速度,因为您不必每次都在 getView 方法中调用 findViewById()。参见 List14 in API demos .
  • 创建一个通用布局,该布局将符合所有属性组合并在当前位置没有元素时隐藏一些元素。

希望对你有所帮助。如果您可以提供一些包含您的数据结构的 XML stub 以及您希望将其映射到行中的具体信息,我将能够为您提供更准确的建议

关于android - 如何优化具有不同项目布局的 ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3442399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com