我通过扩展BaseAdapter
来使用自定义列表视图。每行有一个图像占据列表视图高度的50%,这样我的列表视图一次显示两行。
我想要的是,当我慢速或快速滚动时,无论多慢或多快,列表视图应仅滚动一个项目,不应显示半行......
我尝试的是使用smoothScrollTo(int)
,但它没有解决我的问题。通过平滑滚动,它仍然会抖动。
我的目标sdk版本是7。
答案 0 :(得分:1)
一点一点地去:
mList.setOnScrollListener(new OnScrollListener() {
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {}
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (scrollState == OnScrollListener.SCROLL_STATE_IDLE)
{
mList.getRefreshableView().setSelection(mList.getRefreshableView().getFirstVisiblePosition()+1);
}
}
});
答案 1 :(得分:0)
在阅读了您的要求后,我觉得您可能更适合自定义视图切换器,因为列表视图窗口小部件会在滚动时将其自身转换为位图。转到滚动条类来改变列表滚动的方式并不容易。