shinmai333
@shinmai333

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

スクロールバーを使ってRecyclerViewをスクロールする方法

解決したいこと

スクロールバーを使用してRecyclerViewをスクロールする方法を教えてください。
Googleでの検索時など右側にあるスクロールバーをRecyclerViewでも活用したいです。
スクロールバーを 持って(?)/掴んで(?)/つまんで(?) 画面をスクロールする感じです。(説明が難しい。伝わりますか?)

現ソースコード

.xml
<androidx.recyclerview.widget.RecyclerView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:scrollbars="vertical"
    android:fadeScrollbars="false" />

自分で試したこと

スクロールバーの表示はできていて、普段通りRecyclerViewをスクロールすると、
逆方向ですがバーも一緒に動きます。
それをバーの押下でスクロールし、方向も同じ方向にスクロールしたいです。
色々検索しましたがわかりませんでした。

エンジニアの先輩方、ご教授お願いします!!

0

2Answer

Comments

  1. @shinmai333

    Questioner

    回答ありがとうございます。
    私の質問が説明不足だったと思うのですが、
    スクロールバーを掴んでスクロールする方法を教えていただきたいです。

    ちなみにapp:fastScrollEnabled="true"すると、アプリが落ちました。(?)
  2. おや?リンク先の動作イメージ最後まで見ました?
    要望通りのスクロールバーを掴んでスクロールする方法だと思いますが。
    (スクロールバーが赤くなってる状態)
  3. @shinmai333

    Questioner

    すみません!見落としてました。。。
    まだ完全ではないですが、これから色々自分色にできていければなと思います!
    とても助かりました。本当にありがとうございます!
  4. @shinmai333

    Questioner

    @isshy_exception さん
    質問の内容とは少しずれますが、
    android:fadeScrollbars="false"
    みたく、スクロールバーをずっと表示したいのですが、何かわかることあったりしないでしょうか?
  5. android:fastScrollEnabled="true"

    android:fadeScrollbars="false"
    は一緒に入れられない感じなんですか?
  6. @shinmai333

    Questioner

    今ソースコードを
    <androidx.recyclerview.widget.RecyclerView
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:fastScrollEnabled="true"
    android:fadeScrollbars="false"
    app:fastScrollEnabled="true"
    app:fastScrollVerticalTrackDrawable="@drawable/layout_scrollbar_track"
    app:fastScrollVerticalThumbDrawable="@drawable/layout_scrollbar_thumb"
    app:fastScrollHorizontalTrackDrawable="@drawable/layout_scrollbar_track"
    app:fastScrollHorizontalThumbDrawable="@drawable/layout_scrollbar_thumb"/>
    にしたのですが、まだスクロールバーは隠れちゃっていて、
    動画のように一度スクロールすると、バーも出てきて、バーの操作も行える状態です。

Comments

  1. @shinmai333

    Questioner

    横スクロールのRecyclerViewにしてますので、
    android:scrollbars="horizontal"
    で入れました。
    そうするといい感じにうまくいけました!
    scrollbarsに被せる感じでfastScrollを入れたらいいですね!二つのバーを組み合わせるといった発想がなかったです。。。
    本当にありがとうございます!!
  2. うまくいったようなら良かったです!👍

Your answer might help someone💌