草庐IT

Listadapter

全部标签

android - 为什么适配器中的 getCount 被调用了这么多次?

我有一个自定义列表,需要几分钟才能显示出来。当我试图检查问题出在哪里时,我看到即使列表中只有一项,getCount()方法也被调用了5次,getVIew()被调用了一次,然后getCount()是被叫到更多时间。总体上getCount()被调用了7次。这有意义吗?谢谢! 最佳答案 你可以看到hereAdapter.getCount()方法的不同内部调用。但您必须记住,您无法控制如何调用此方法。它可以被多次调用,这就是为什么你必须尽可能快地保持它。 关于android-为什么适配器中的ge

android - 为什么适配器中的 getCount 被调用了这么多次?

我有一个自定义列表,需要几分钟才能显示出来。当我试图检查问题出在哪里时,我看到即使列表中只有一项,getCount()方法也被调用了5次,getVIew()被调用了一次,然后getCount()是被叫到更多时间。总体上getCount()被调用了7次。这有意义吗?谢谢! 最佳答案 你可以看到hereAdapter.getCount()方法的不同内部调用。但您必须记住,您无法控制如何调用此方法。它可以被多次调用,这就是为什么你必须尽可能快地保持它。 关于android-为什么适配器中的ge

Android Endless list 内存管理

我通过在onScrollStateChanged(...)方法中将更多项目加载到arraylist来实现无限ListView。如果我正在实现这个方案来获取超过100万个条目,我将在arraylist中添加一百万个对象,这是内存密集型的。我可以使用哪些方案来进行高效的内存管理?PS:问题是关于可以放入适配器的项目数量。编辑:更多细节:数据来源是互联网。我必须从Internet获取数据并将其放入listview适配器。 最佳答案 我认为您应该只保留当前条目以及它们之前或之后的条目(可能是100个),将此数据放入缓存中。当您滚动ListV

Android Endless list 内存管理

我通过在onScrollStateChanged(...)方法中将更多项目加载到arraylist来实现无限ListView。如果我正在实现这个方案来获取超过100万个条目,我将在arraylist中添加一百万个对象,这是内存密集型的。我可以使用哪些方案来进行高效的内存管理?PS:问题是关于可以放入适配器的项目数量。编辑:更多细节:数据来源是互联网。我必须从Internet获取数据并将其放入listview适配器。 最佳答案 我认为您应该只保留当前条目以及它们之前或之后的条目(可能是100个),将此数据放入缓存中。当您滚动ListV

android - ListAdapter 和 SectionIndexer 的快速滚动显示问题

我有一个按月和年(2010年6月、2010年7月等)分隔的事件列表。我启用了快速滚动,因为列表真的很长。我还实现了SectionIndexer,以便人们在快速向下滚动事件列表时可以看到他们当前正在查看的月份和年份。我对实现没有任何问题,只是信息的显示方式。使用SectionIndexer快速滚动似乎只能支持带有单个字母的标签。如果列表按字母顺序排列,那将是完美的,但我希望它显示更多文本。如果您查看下面的屏幕截图,您会发现我遇到的问题。(来源:matto1990.com)我想知道的是:是否可以更改屏幕中央的文本显示方式。我可以以某种方式更改它以使其看起来正确(背景覆盖所有文本)。提前致谢

android - ListAdapter 和 SectionIndexer 的快速滚动显示问题

我有一个按月和年(2010年6月、2010年7月等)分隔的事件列表。我启用了快速滚动,因为列表真的很长。我还实现了SectionIndexer,以便人们在快速向下滚动事件列表时可以看到他们当前正在查看的月份和年份。我对实现没有任何问题,只是信息的显示方式。使用SectionIndexer快速滚动似乎只能支持带有单个字母的标签。如果列表按字母顺序排列,那将是完美的,但我希望它显示更多文本。如果您查看下面的屏幕截图,您会发现我遇到的问题。(来源:matto1990.com)我想知道的是:是否可以更改屏幕中央的文本显示方式。我可以以某种方式更改它以使其看起来正确(背景覆盖所有文本)。提前致谢

android - 可以动态更改 ListView 的适配器吗?

我想根据需要更改ListView的ArrayAdapter,而不是创建多个Activity。我在API中没有看到任何提及关于是否可以多次调用setAdapter()。更具体地说,假设我想启动一个具有ListView的Activity。在此示例中,ListView使用listView.setAdapter(this)进行初始化,例如来自CategoryArrayAdapter。然后用户选择一个类别。在不启动新Activity的情况下,代码将为同一ListView设置新适配器。新的适配器,比如ItemArrayAdapter调用listView.setAdapter(this)。是否有人有

android - 可以动态更改 ListView 的适配器吗?

我想根据需要更改ListView的ArrayAdapter,而不是创建多个Activity。我在API中没有看到任何提及关于是否可以多次调用setAdapter()。更具体地说,假设我想启动一个具有ListView的Activity。在此示例中,ListView使用listView.setAdapter(this)进行初始化,例如来自CategoryArrayAdapter。然后用户选择一个类别。在不启动新Activity的情况下,代码将为同一ListView设置新适配器。新的适配器,比如ItemArrayAdapter调用listView.setAdapter(this)。是否有人有

java - 使用 ListAdapter 时出现 ArrayIndexOutOfBoundsException

我正在使用自定义ListAdapter对于ListView.我没有动态更改任何内容(查看次数、查看类型、启用/禁用,我阅读了其他帖子,但他们从代码中更改了某些内容)。我必须执行以下操作才能触发异常。向下滚动到列表底部,然后再次向上滚动。在向上滚动动画开始时,我得到了这个异常。04-1409:41:43.907:ERROR/AndroidRuntime(400):FATALEXCEPTION:main04-1409:41:43.907:ERROR/AndroidRuntime(400):java.lang.ArrayIndexOutOfBoundsException04-1409:41:

java - 使用 ListAdapter 时出现 ArrayIndexOutOfBoundsException

我正在使用自定义ListAdapter对于ListView.我没有动态更改任何内容(查看次数、查看类型、启用/禁用,我阅读了其他帖子,但他们从代码中更改了某些内容)。我必须执行以下操作才能触发异常。向下滚动到列表底部,然后再次向上滚动。在向上滚动动画开始时,我得到了这个异常。04-1409:41:43.907:ERROR/AndroidRuntime(400):FATALEXCEPTION:main04-1409:41:43.907:ERROR/AndroidRuntime(400):java.lang.ArrayIndexOutOfBoundsException04-1409:41: