我有ListView的应用程序。这个ListView有一个Progressbar。当我点击这个进度条时,它显示一个隐藏的布局(这个布局包含带有歌词的textview)。因此,当我点击最后一个进度条时,它显示隐藏的布局,但我需要手动滚动。我希望滚动必须是自动的。 请帮帮我。
答案 0 :(得分:2)
您可能会发现smoothScrollByOffset()
的{{1}}或smoothScrollBy()
方法最有用。特别是ListView
同时需要滚动距离和滚动动画应该发生的持续时间。使用此方法,您可以精确控制滚动列表的距离。
答案 1 :(得分:2)
尝试这样的事情:
private void scroll2bottom() {
yourListView.post(new Runnable() {
@Override
public void run() {
yourListView.setSelection(yourListAdapter.getCount() - 1);
}
});
}
答案 2 :(得分:1)
只需使用transcriptMode
listview内置了自动滚动
机器人:transcriptMode ="正常"当它在底部时滚动而不是滚动时滚动
并且设置alwaysScroll将始终滚动到底部
然后你可以设置android:stackFromBottom =" true"让它从底部成长
答案 3 :(得分:0)
尝试这种方式:
lv.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);
lv.setStackFromBottom(true);
答案 4 :(得分:0)
要以编程方式滚动listView,您可以使用其smoothScrollByOffset(int offset)或smoothScrollToPosition(int position)方法,您可以找到有关ListView小部件的文档here以及如何使用这些方法。