LoginSignup
1
0

More than 3 years have passed since last update.

【Android】ScrollView がトップに戻らない

Last updated at Posted at 2020-11-01

やりたいこと

ScrollView の中に RecyclerView を入れてスクロールできるようにしている画面があります。

 --------------------
| ScrollView         |
|  ----------------  |
| | RecyclerView   | |
| |                | |

RecyclerView の中身はユーザーの操作によって非同期的に変更されることがあり、変更される場合はトップまでスクロールを戻したい。

【2020/11/02 追記】

コメントでご指摘いただきましたが、上記のような場合 ScrollView がなくてもスクロールが機能するので不要でした。

そのうえで RecyclerView をトップまで戻す方法は下記にあるとおり recyclerView.scrollToPosition(0) で OK のようです。

試したこと

スクロールをトップまで戻すための方法はいろいろな記事で書かれています。

よく目にするのが以下の2つ。

scrollView.fullScroll(ScrollView.FOCUS_UP)
scrollView.scrollTo(0, 0)

しかし自分の環境ではどちらもうまく機能しませんでした。

結論

結果、次の方法で解決しました。

recyclerView.scrollToPosition(0)

RecyclerView の最初の要素までスクロールさせることができます。

上記ダメパターンがなぜ機能しなかったのか、、もしわかる方がいれば教えていただけると幸いです。 → コメントにて教えていただきました!

1
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0