Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
dubok79
323 / 121 / 11
Регистрация: 01.11.2012
Сообщений: 586
#1

SwypeRefreshLayout не останавливает анимацию во Fragment - Программирование Android

28.01.2016, 18:29. Просмотров 256. Ответов 7
Метки нет (Все метки)

Есть ViewPager, в нем фрагменты. Во фрагменте SwipeRefreshLayout с ListView
Внутри класса фрагмента в onCreateView задаю

Java
1
2
3
4
5
6
7
8
9
10
        swipeLayout = (SwipeRefreshLayout) view.findViewById(R.id.SwipeRefreshLayout);
        swipeLayout.setOnRefreshListener(SwipeRefreshListener);
 
        private SwipeRefreshLayout.OnRefreshListener SwipeRefreshListener = new SwipeRefreshLayout.OnRefreshListener(){
            @Override
            public void onRefresh() {
                swipeLayout.setRefreshing(true);
                new GetDataTask().execute();
            }
        };
Все работает. После выполнения всех задач в GetDataTask пишу swipeLayout.setRefreshing(false);, но анимация не пропадает. Так и висит. Пытался найти что-то похожее на stackoverflow, но не нашел.

Может кто-то сталкивался, как решить проблему?

Когда раньше фрагментов не было, все работало.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2016, 18:29     SwypeRefreshLayout не останавливает анимацию во Fragment
Посмотрите здесь:

MapFragment в Fragment - Программирование Android
Как получить MapFragment который находится в Fragment? Сейчас использую такой способ: MapFragment mapFragment =...

Fragment и RoboSpice - Программирование Android
Всем доброго времени суток, возникла проблема при использовании асинхронного запроса с помощью RoboSpice и инициализации фрагмента....

set и get из fragment - Программирование Android
Здравствуйте! Есть 3 таба которые реализованы с помощью fragment. На табах есть кнопки, текстовые поля и т.д. Подскажите пожалуйста, как...

findViewById и Fragment - Программирование Android
Пытаюсь использовать getView().findViewById Но не работает

Fragment и ListView - Программирование Android
Задача необходимо сделать 2 фрагмента в 1-находится Listview в нем кнопки подгружаемые из файла, во 2 фрагменте описание как сделать так...

Работа с Fragment - Программирование Android
Ребят изучаю андройд с недавних пор, дошел до фрагментов, но не особо их понимаю, можете кому не лень норм инфы накидать на эту тему?)

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2459 / 1904 / 591
Регистрация: 12.05.2014
Сообщений: 6,712
Завершенные тесты: 1
28.01.2016, 18:35     SwypeRefreshLayout не останавливает анимацию во Fragment #2
в onRefresh() нет необходимости писать swipeLayout.setRefreshing(true);
лаяут и так уже в состоянии refreshing

я использовал такой костыль
Java
1
2
3
4
5
6
7
8
9
10
11
@Override
    public void onRefresh() {
        handler.postDelayed(stopRefreshing, 5000); // время можно уменьшить
    }
 
    private final Runnable stopRefreshing = new Runnable() {
        @Override
        public void run() {
            if (swipeLayout.isRefreshing()) swipeLayout.setRefreshing(false);
        }
    };
в задаче писал так
Java
1
 if (swipeLayout.isRefreshing()) swipeLayout.setRefreshing(false);
dubok79
323 / 121 / 11
Регистрация: 01.11.2012
Сообщений: 586
28.01.2016, 20:39  [ТС]     SwypeRefreshLayout не останавливает анимацию во Fragment #3
Паблито, я так писал уже. Не помогает. Все выполняется, список ListView обновляется, а значок прогресса висит, крутится... Причем если вывести его и сразу скрыть setRefreshing(false), то он скрывается через раз.

Такое ощущение, что во фрагменте теряется ссылка на объект swipeLayout.

Добавлено через 5 минут
Попробовал на разных страницах фрагмента. Работает 2-3 раза из 4-х. Потом снова висит.

Добавлено через 1 час 42 минуты
Короче получается, что isRefreshing возвращает false, хотя кружок прогресса остается на экране. Как быть?
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
28.01.2016, 21:19     SwypeRefreshLayout не останавливает анимацию во Fragment #4
dubok79, можно без проверки его тормозить, ничего плохого не произойдет.
dubok79
323 / 121 / 11
Регистрация: 01.11.2012
Сообщений: 586
28.01.2016, 21:20  [ТС]     SwypeRefreshLayout не останавливает анимацию во Fragment #5
Spelcrawler, я торможу, только он не пропадает. Остается висеть. Бывает, что пропадет, но чаще всего просто висит.
Pablito
2459 / 1904 / 591
Регистрация: 12.05.2014
Сообщений: 6,712
Завершенные тесты: 1
29.01.2016, 11:01     SwypeRefreshLayout не останавливает анимацию во Fragment #6
я с ним как-то провозился долго и проблема решилась так как я выше отписал, этот лаяут сырой какой-то
как и координатор
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
29.01.2016, 11:06     SwypeRefreshLayout не останавливает анимацию во Fragment #7
Цитата Сообщение от Паблито Посмотреть сообщение
этот лаяут сырой какой-то
Согласен. Только у меня была проблема не с остановкой, а с запуском при повороте экрана. Т.е. когда что-то обновляется и переворачивается экран он никак не хотел запускаться и тоже решилось с помощью postDelayed. Потом прочитал, что он не будет запускаться пока не выполниться его onMeasure(), может и тут с этим проблема.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2016, 11:40     SwypeRefreshLayout не останавливает анимацию во Fragment
Еще ссылки по теме:

Кликабельные Fragment - Программирование Android
Доброго дня, коллеги. Прошу помощи. Есть активити с scrollView, внутри его Fragment: <ScrollView ...

Анимация Fragment - Программирование Android
Здравствуйте, такой вопрос. как прикрутить эту анимацию: <?xml version="1.0" encoding="utf-8"?> <alpha ...

SwipeRefreshLayout + Fragment - Программирование Android
Имеется mainActivity c <android.support.v4.widget.SwipeRefreshLayout ...

Вызов Fragment - Программирование Android
Здравствуйте, есть такая задача. есть main класс ActionBarActivity который из обычно класса можно вызывать как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
dubok79
323 / 121 / 11
Регистрация: 01.11.2012
Сообщений: 586
29.01.2016, 11:40  [ТС]     SwypeRefreshLayout не останавливает анимацию во Fragment #8
Странно то, что он работает через раз. И проблема возникла после того как я перешел на фрагменты. Причем все события выполняются и сам он думает даже, что уже скрылся, но фиг там. Придется возвращаться на PullToRefresh :-(
Yandex
Объявления
29.01.2016, 11:40     SwypeRefreshLayout не останавливает анимацию во Fragment
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru