#android #android-studio
#Android #android-studio
Вопрос:
У меня есть recyclerview, и я добавил к нему полосу прокрутки со следующим кодом
<androidx.recyclerview.widget.RecyclerView
android:id="@ id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical"
android:scrollbarThumbVertical="@android:color/white"
android:scrollbarSize="5dp"
android:fadeScrollbars="true"
android:scrollbarDefaultDelayBeforeFade="500"
android:scrollbarFadeDuration="500"
>
</androidx.recyclerview.widget.RecyclerView>
Я бы хотел, чтобы полоса прокрутки не отображалась сразу, когда впервые появляется экран, содержащий мой recyclerview. Она должна появиться сразу, когда пользователь попытается прокрутить вниз, а затем снова исчезнуть. Прямо сейчас, когда я перехожу на этот экран, полоса прокрутки уже отображается, и как только я прокручиваю экран вниз, моя полоса прокрутки исчезает. Как мне этого добиться?
Комментарии:
1. Вы искали в Google «скрыть панель приложений на Android с прокруткой»?
2. Я не хочу скрывать свою панель приложений. Это не тот вопрос, который я задавал.
3. это функция по умолчанию в режиме рециркуляции, которую вы хотите достичь, не нужно исчезать
Ответ №1:
Удалите android:fadeScrollbars="true"
или сделайте его ложным
Ответ №2:
Хорошо, я нашел решение этой проблемы. Я хотел, чтобы моя полоса прокрутки не отображалась, когда впервые появляется экран, содержащий мое представление recycler. Итак, я только что добавил это
recyclerView.setVerticalScrollBarEnabled(false); //hides scrollbar at the beginning
recyclerView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
recyclerView.setVerticalScrollBarEnabled(true);
return false;
}
});
поэтому сразу, когда я захочу прокрутить, сенсорный прослушиватель отобразит мою полосу прокрутки, а настройка параметров fade out в xml приведет к исчезновению полосы прокрутки.