gpt4 book ai didi

android - ListView header 占据一个位置是否有充分的理由?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:51:07 25 4
gpt4 key购买 nike

我刚刚向我的 ListView 添加了一个 header ,我必须更改一堆代码,因为 header 基本上变成了位置 0(这意味着我的 CursorAdapter 的 Cursor 索引与列表的索引不一致。它们是现在减 1)。为什么?这对我来说似乎有点傻。

我能想到的唯一原因是开发人员可能想要访问 header 。美好的。提供类似 getListView().getHeader() 的内容。

最佳答案

由于某些原因,位置(来自 onItemClick)与 ListView 中的项目数相关(不是适配器),包括页眉和页脚。当您设置 OnItemClickListener 时,您应该通过调用 listView.getItemAtPosition(position) 而不是 adapter.getItem(position) 来检索被点击的项目。

事实上,您应该始终使用 getItemAtPosition,因为这样无论您的 ListView 是否有页眉和页脚都无所谓,如果您添加新的页眉也不会需要更改您的代码。

如果你不希望你的标题是可选的,你应该以这种方式添加它:listView.addHeaderView(headerView, null, false)

关于android - ListView header 占据一个位置是否有充分的理由?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4027997/

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