我有一个 ListView,其中每个项目代表一个最长可运行 90 分钟的播客。选择一个项目将显示一个 SeekBar 并开始使用 MediaPlayer 从 URL 流式传输音频。
我可以使用一些指示来说明如何在 SeekBar 滚动离开页面然后滚动回 View 后保持 SeekBar 的状态。我知道 View 会被回收,而且我读到过在适配器中缓存 View 是个坏主意,所以我只是想知道还有哪些其他选项。
最佳答案
I know that views are recycled and I've read that caching views in the adapter is a bad idea
缓存所有您的 View 不是一个好主意,除非通过回收机制。缓存一个 SeekBar
,甚至是包含 SeekBar
的一行,都不是什么大问题。缓存 1,000 行是问题所在。
因此,我会记下哪个位置
是播放播客的位置。在适配器的 getView()
实现中,如果请求的 position
是播放播客的位置,则使用缓存行。否则,进行正常回收。
关于android - 在 ListView 中更新 SeekBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3882353/