SwipeRefreshLayout отключить анимацию перетаскивания при смахивании вниз

Можно ли отключить SwipeRefreshLayout анимацию перетаскивания при смахивании вниз без настройки класса?


person Alexander Zhak    schedule 28.09.2014    source источник
comment
нет нет возможности. Даже с подклассом невозможно (без рефлексии)   -  person Blackbelt    schedule 28.09.2014


Ответы (2)


Попробуйте позвонить:

setEnabled(false)

на вашем представлении SwipeRefreshLayout.

person carloshwa    schedule 28.12.2014
comment
Нет, это полностью отключит управление, а не только анимацию. Это не то, что нужно - person Alexander Zhak; 12.01.2015
comment
Вызов этого жеста отключает жест, но по-прежнему позволяет программно отображать обновляющую анимацию с помощью: setRefreshing(true) - person carloshwa; 02.02.2015
comment
@AlexanderZhak Это не отключило внутренний ListView для меня. Я все еще могу щелкать элементы в списке, смахивать их в сторону и т. Д., И ListView ведет себя так, как будто их нет SwipeRefreshLayout. - person Lahiru Chandima; 20.02.2016
comment
Идеально. После этого анимация смахивания вниз пропадает, onRefresh () не запускается, и все внутри SwipeRefreshLayout работает как раньше. Все, что мне нужно. - person VoW; 20.07.2016
comment
Если у вас возникли проблемы с вызовом setRefreshing(true) из onCreate (), версия 24.2.0 библиотеки поддержки исправляет ошибку: code.google.com/p/android/issues/detail?id=77712 - person carloshwa; 17.08.2016
comment
Рад слышать, что они это исправили. - person Alexander Zhak; 21.10.2016
comment
отлично ... сэкономьте мое время. - person Patel Vicky; 15.12.2017

Один простой способ отключить смахивание - установить слишком большое расстояние для запуска синхронизации.

mSwipeLayout.setDistanceToTriggerSync(999999);
person Sylvain Pennec    schedule 19.02.2016
comment
Похоже, что поведение SwipeRefreshLayout.setEnabled () изменилось, и это фактически единственное рабочее решение прямо сейчас - если я хочу по-прежнему отображать индикатор выполнения, но отключите жест. - person petrnohejl; 06.10.2017