相关疑难解决方法(0)

如何更新ListView中的单行?

我有一个ListView显示新闻项目.它们包含图像,标题和一些文本.图像被加载到一个单独的线程(带有队列和所有)中,当下载图像时,我现在调用notifyDataSetChanged()列表适配器来更新图像.这是有效的,但是getView()因为notifyDataSetChanged()调用getView()了所有可见的项目而被过于频繁地调用.我想只更新列表中的单个项目.我该怎么做?

我目前使用的方法存在的问题是:

  1. 滚动很慢
  2. 我在图像上有一个淡入动画,每次加载列表中的一个新图像时都会发生这种动画.

android android-arrayadapter android-listview

130
推荐指数
3
解决办法
14万
查看次数

Android ListView:获取可见项的数据索引

ListView创建了一个Android ,SimpleAdapter其中包含的项目多于屏幕中的项目.滚动列表后,我需要获取列表中第一个可见项的数据模型中的位置.

基本上我想要一个像:listView.getChildAt(0).getPositionInDataModel().

Adapter它有一些功能getItemId(position),看起来很有用; 但是,SimpleAdapter实现只返回传入的位置,而不是像我希望的那样的行ID.

一个强力解决方案是在索引0处获取View,并将其与适配器中每个项目的视图进行比较.但是,似乎没有一种简单的方法可以从适配器获取特定位置的视图.

有人有什么想法?

android listview

34
推荐指数
1
解决办法
5万
查看次数