更新适配器外部的ListView项

时间:2010-12-07 23:24:45

标签: android

我有一个ListView,其中每个项目代表一个播客。选择项目将播放播客。在播放时,该ListView项目的视图显示一个经过时间的计数器,旁边有一个SeekBar来显示进度。

我遇到问题的方法是找出如何处理更新经过时间计数器(TextView),同时通过触摸重新定位SeekBar。在notifyDataSetChanged SeekBar事件期间调用onProgressChanged似乎效果不佳。

1 个答案:

答案 0 :(得分:3)

我不是这种UI模式的忠实粉丝,仅仅因为如果用户滚动,他们可能很难找到它们的位置。我建议您使用SeekBar和计数器,以及有关当前播放的播客的信息,在ListView之外 - 可能在设置为具有可见性GONE的布局中,并在当用户选择播客时。

缺乏这一点,我认为你的编码很痛苦。

你是对的notifyDataSetChanged()可能不是答案。相反,您可能需要直接使用TextView ...同时它在屏幕上。跟踪它是否在屏幕上是Adapter的工作,尽管细节会根据您实际实现列表的方式而有很大差异(例如,行的不同视图类型?)。