Как отключить действие «тянуть для обновления» и использовать только индикатор?

Я включил «вытягивать для обновления» в свой проект, используя файл SwipeRefreshLayout.

Когда я перемещаюсь вниз, появляется индикатор загрузки (стиль дизайна материала). Я знаю, так и должно работать, но я хочу отключить эту функцию, и начать обновление, нажав на какую-нибудь кнопку и используя индикатор загрузки SwipeRefreshLayout.

Как я могу это сделать?


person Александр Шевчук    schedule 18.05.2015    source источник


Ответы (2)


Из документации:

Если активность хочет показать только анимацию прогресса, она должна вызывать setRefreshing(true). Чтобы отключить анимацию жестов и прогресса, вызовите setEnabled(false) в представлении.

Итак, чтобы показать анимацию:

swiperefreshLayout.setEnabled(true);
swiperefreshLayout.setRefreshing(true);

И чтобы скрыть анимацию:

swiperefreshLayout.setRefreshing(false);
swiperefreshLayout.setEnabled(false);
person nhasan    schedule 19.05.2015

Вам не нужно всегда включать и отключать. Просто отключите один раз при создании представления, а затем используйте setRefreshing.

person Michał Janowicz    schedule 16.01.2018