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

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

Войти
Регистрация
Восстановить пароль
 
ILNAR_93
Android
217 / 217 / 21
Регистрация: 19.01.2013
Сообщений: 1,637
Записей в блоге: 3
#1

Выполнение функции в цикле или ? - Android

30.04.2014, 14:55. Просмотров 629. Ответов 6
Метки нет (Все метки)

Приветствую ребята!

Работаю с веб - сервисом.
Есть ListView (туда получаю список объектов):
Кликните здесь для просмотра всего текста
Выполнение функции в цикле или ?


Мне необходимо реализовать функцию которая бы обращалась к веб сервису и запрашивала данные на выбранные объекты (checkbox=true).

Пока вижу один выход, создать переменную List<String>, и при checked туда добавлять IDшку, потом

Java
1
2
3
4
for (int i = 0; i<List.count; i++)
{
   //выполнить запрос.[i]
}
но у меня возник такой вопрос так как этот цикл выполняется в потоке, и собственно поток будет запускаться каждый раз при checked.

- что будет если много раз подряд запускать один и тот же поток ?)) - это произойдет если пользователь выберед 50 объектов подряд


Может кто нибудь даже поймет суть всего моего вопроса и сможет подсказать другую, более правильное решения данного вопроса ?)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
1565 / 1307 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
30.04.2014, 15:36     Выполнение функции в цикле или ? #2
kaspersky, как я понимаю, Вам нужен некий механизм, который будет, например, ждать N секунд после действия пользователя.
1. Юзер выбрал итем.
2. Обратиться к механизму -> он запустит таймер на N секунд.
3. Если за это время юзер изменил список, то таймер перезапускается.
4. Если юзер ничего не делает - отправляем список на сервер.
5. Возвращаемся к пункту 1
ILNAR_93
Android
217 / 217 / 21
Регистрация: 19.01.2013
Сообщений: 1,637
Записей в блоге: 3
30.04.2014, 15:56  [ТС]     Выполнение функции в цикле или ? #3
YuraAAA, Ну да, что то типо этого, а что произойдет если все запрос пошел на сервер, а пользователю доперло что нужно добавить еще один объект, и он его добавит пройдет несколько секунд и поток обратно пересоздается при выполнении - при этом не будет краха или других курьезов ?
YuraAAA
1565 / 1307 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
30.04.2014, 16:02     Выполнение функции в цикле или ? #4
kaspersky, нет, не будет.
2 вопроса.
1. Вы используете AsyncTask в качестве асинхронного механизма?
2. Если да, то какая версия API минимальна в Вашем приложении?
ILNAR_93
Android
217 / 217 / 21
Регистрация: 19.01.2013
Сообщений: 1,637
Записей в блоге: 3
03.05.2014, 20:53  [ТС]     Выполнение функции в цикле или ? #5
Цитата Сообщение от YuraAAA Посмотреть сообщение
какая версия API минимальна в Вашем приложении?
Android 4.0.3

API 15 вроде как.

Добавлено через 6 минут
Цитата Сообщение от YuraAAA Посмотреть сообщение
Вы используете AsyncTask в качестве асинхронного механизма?
Да.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
06.05.2014, 09:21     Выполнение функции в цикле или ? #6
Можно добавить кнопку запускающую поток, а в нем циклом перебирать чекбоксы и посылать поочередно запросы на сервер. Только в этом случае нужно добавить диалог загрузки ProgressDialog для блокировки активити, чтобы пользователь не смог выбрать еще что нибудь.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2014, 00:48     Выполнение функции в цикле или ?
Еще ссылки по теме:

Android Перебор id ресурсов в цикле
Выполнение внешнего Java файла или обновление приложения Android
Android Обращение к различными наименованиям в цикле
Android Join в цикле while
Android CountDownTimer запуск в цикле

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

Или воспользуйтесь поиском по форуму:
ILNAR_93
Android
217 / 217 / 21
Регистрация: 19.01.2013
Сообщений: 1,637
Записей в блоге: 3
14.06.2014, 00:48  [ТС]     Выполнение функции в цикле или ? #7
Цитата Сообщение от YuraAAA Посмотреть сообщение
как я понимаю, Вам нужен некий механизм, который будет, например, ждать N секунд после действия пользователя.
1. Юзер выбрал итем.
2. Обратиться к механизму -> он запустит таймер на N секунд.
3. Если за это время юзер изменил список, то таймер перезапускается.
4. Если юзер ничего не делает - отправляем список на сервер.
5. Возвращаемся к пункту 1
YuraAAA, Все таки для планшетной версии думаю использовать предложенный тобой метод.)

Не мог бы толкнуть в сторону где уже рассматривался подобный вопрос ?) спасибо!)
Yandex
Объявления
14.06.2014, 00:48     Выполнение функции в цикле или ?
Ответ Создать тему
Опции темы

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