数组适配器中的 get count() 如何在不显式返回数组大小的情况下返回值?

Posted

技术标签:

【中文标题】数组适配器中的 get count() 如何在不显式返回数组大小的情况下返回值?【英文标题】:How does getcount() in array adapter return values without returing array size explicitly? 【发布时间】:2020-02-18 08:22:53 【问题描述】:

这个问题可能听起来很愚蠢,但我忍不住在这里问。

我知道在数组适配器中,getcount() 方法用于返回要在列表中显示的元素数。我也知道我们需要覆盖它并返回数组的大小或要在布局中显示的列表数。

在许多在线博客中,我看到 getcount() 方法没有被覆盖,但仍然会显示列表,当我尝试以相同的方式进行操作时,除非我覆盖 getcount(),否则不会显示任何列表.

所以我的问题是

1) 真的有必要重写显示列表的方法吗? getcount 方法如何知道要显示多少个列表而不像在许多在线博客中那样覆盖它。

2) 当不需要覆盖 getcount() 并仍按预期获得视图时。

我只是在学习,希望你能理解。谢谢

【问题讨论】:

谢谢,但是是否有可能在不覆盖 getcount() 的情况下获得视图。因为在某些在线博客中,他们没有覆盖并且仍然获得列表数据。 不要混淆 ArrayAdapter、BaseAdapter、ListAdapter。在 ListAdapter 中,您必须自己做所有事情。 ArrayAdapter 接受一个数组并为您做所有事情。 【参考方案1】:
    在适配器内部(不是列表本身) - 是的,您必须重写此方法并返回项目数(例如,直接来自 list.size()) 显示这些“许多在线博客链接”,将验证。一些适配器(如基本ArrayAdapter)可能具有自动计数项,特别是当它们在List 的构造函数中传递时 - 此类是众所周知的集合,因此为这种常见用法准备了适配器,但如果你有@ 987654324@由自己的分辨率填充,然后您必须扩展适配器并自行处理计数 显示一些代码...总是

【讨论】:

如你所问,当 getcount() 未被覆盖时,下面给出了一个此类博客的链接link 链接下的适配器是ArrayAdapter,它以List为参数,并“自动”绕过getCount()list.size()

以上是关于数组适配器中的 get count() 如何在不显式返回数组大小的情况下返回值?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不显式导入的情况下使新的装饰器在类中可用?

如何在不显式编译的情况下让 Visual Studio 错误检查我的代码(显示曲线)?

如何在嵌套数组中使用 apex_json.get_count

使用 Excel 是不是可以在不显式生成表格数据但仅使用公式的情况下绘制图表?

如果通过 spark-submit 提交作业,我们可以在不显式创建的情况下使用 spark 会话对象吗

我可以在不显式调用 headObject 的情况下从 S3 对象流中获取 Content-Type 吗?