我想按下按钮滚动我的列表视图。上下使用两个按钮,当我按下按钮时,列表视图应该向上移动一行,当我按下按钮时,列表视图应该向下移动一行。
我的列表视图基于this链接。我发现了scrollview here的一个很好的例子。现在我的问题是而不是scrollview我需要使用我的列表视图,它应该增加/减少一行。作为Android新手,任何人都帮助我解决这个问题。提前谢谢。
答案 0 :(得分:3)
您可以尝试以下任一方法:
直接滚动:
getListView().setSelection(int);
顺畅滚动:
getListView().smoothScrollToPosition(int);
示例代码:
public View.OnClickListener onChk = new View.OnClickListener() {
public void onClick(View v) {
int index = list.getFirstVisiblePosition();
getListView().smoothScrollToPosition(index+1); // For increment.
}
});
但是,您需要处理一个案例,即顶部视图中只有一半或部分是可见的。
答案 1 :(得分:2)
您是否检查过IDE建议? ;)
ListView lv = (ListView) findViewById(R.id.myListView);
// to scroll to a given position
lv.scrollTo(int x, int y);
// to scroll by a given number of dp
lv.scrollBy(int x, int y);
答案 2 :(得分:0)
滚动时间平滑
{{1}}
参数 位置 - >滚动到
的位置偏移---->滚动完成后距离视图顶部位置的所需距离
duration->用于滚动的毫秒数
注意:来自API 11。