我通过扩展 BaseAdapter
使用自定义 ListView 。每行有一个图像并占据 ListView 高度的 50%,这就是我的 ListView 一次显示两行的方式。
我想要的是,当我缓慢或快速滚动时,无论多慢或多快, ListView 都应该只滚动一个项目而不应该显示半行......
我尝试的是使用 smoothScrollTo(int)
但它没有解决我的问题。在平滑滚动的情况下,它仍然会抖动。
我的目标 sdk 版本是 7。
最佳答案
一点一点地走:
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);
}
}
});
关于android - 如何使 ListView 一次滚动一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8475598/