【发布时间】:2012-12-19 12:19:37
【问题描述】:
我一直在研究ListViewidea,它可以在没有用户交互的情况下自动滚动,并且使用 android API 绝对可行,例如 smoothScrollToPositionFromTop。
我已经实现了ListView BaseAdapter,它永远(几乎)加载项目,以得到一个不间断的自我重复ListView。
我想在这里实现的是永远保持 myListViewscrolling 以一定的速度(慢),以使项目在向下滚动时清晰可读,我不确定ListView 是否是我在这里的最佳选择。
下面是我正在尝试做的事情的 sn-p。结果不知何故还不错,但不够流畅,我能感觉到 ListView 闪烁。
我需要提高流畅度、效率和控制速度
new Thread(new Runnable() {
@Override
public void run() {
int listViewSize = mListView.getAdapter().getCount();
for (int index = 0; index < listViewSize ; index++) {
mListView.smoothScrollToPositionFromTop(mListViewA.getLastVisiblePosition() + 100, 0, 6000);
try {
// it helps scrolling to stay smooth as possible (by experiment)
Thread.sleep(60);
} catch (InterruptedException e) {
}
}
}
}).start();
【问题讨论】:
-
那么问题出在哪里?您已经实现了此功能(无限滚动),但想要提高流畅度/效率/减慢速度?
-
定义“不够平滑”。这可能是由于您的适配器部分,某些项目可能加载缓慢。
-
@breadbin:更新,njzk2“不够流畅”我的意思是我可以看到列表视图变慢,然后再次滚动,这使它滞后。我需要滚动一次并且永远。
-
我认为这是填充列表视图的问题。只需改进您的适配器并使用 viewHoledr 机制来填充列表视图。
标签: android listview scroll autoscroll