RecyclerView.scrollToPosition
时间: 2023-11-16 18:27:25 浏览: 35
`RecyclerView.scrollToPosition()` 方法可以将 RecyclerView 滚动到指定位置,该方法接收一个参数,即目标位置的索引。例如,如果你想将 RecyclerView 滚动到第 10 个位置,可以使用以下代码:
```java
recyclerView.scrollToPosition(9); // 注意:索引从 0 开始
```
需要注意的是,如果你仅仅是想将 RecyclerView 滚动到可见区域内,可以使用 `RecyclerView.smoothScrollToPosition()` 方法,这样会有一个滚动的动画效果:
```java
recyclerView.smoothScrollToPosition(9);
```
如果你想确保 RecyclerView 已经滚动到指定位置,可以在 `scrollToPosition()` 或 `smoothScrollToPosition()` 方法后调用 `RecyclerView.OnScrollListener` 的 `onScrollStateChanged()` 方法,监听滚动状态,等待滚动完成后再进行后续操作。
```java
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if (newState == RecyclerView.SCROLL_STATE_IDLE) {
// 滚动停止后的处理
}
}
});
```