Aleks
Сергей
Хотя с телефона в таком коде не разобраться
Mike
Denis
аргументы?
вот
https://www.mysoftkey.com/java/difference-between-dom-and-sax-parser-in-java/
Дмитрий
все плохо?
Mike
все плохо?
да, потому что ты хочешь, чтобы мы знали твой проект лучше тебя и представили готовое решение
Дмитрий
Спасибо, и на этом)
roman G
Есть идеи что я не так делаю?
Denko
Там же написано что FindViewModel у тебя ее никто не провайдит, вот он и ругается
Andrey
привет
кто-то использовал пагинацию от гугла? типа создается DataSource ему передаются два запроса и т д
Как его отучить делать последний запрос, несмотря на то, что предыдущий вернул не полные данные?
Axbor
Andrey
Axbor
Axbor
Axbor
Можно попробовать на методе loadRange проверить что позиция с которого начинается загрузка кратная к размеру порции.
Axbor
или же просто поставить переменную которая определяет всё ли загрузилось.
Axbor
если всё загрузилось то просто вызвать callback.onResult(emptyList())
Axbor
Andrey
ладно, буду проверять что количество данных меньше loadSize и отправлять callback.onResult(Collections.emptyList());
Axbor
Andrey
ага, что-то упало(
Axbor
Axbor
Andrey
или нет )
java.lang.IllegalStateException: callback.onResult already called, cannot call again.
Andrey
придется делать флаг и проверять его
Axbor
Mentor
27 вещей, которые я хотел бы знать, перед тем, как начать программировать — Разработка на vc.ru
https://vc.ru/dev/82652-27-veshchey-kotorye-ya-hotel-by-znat-pered-tem-kak-nachat-programmirovat
Andrey
+
норм, вроде сработало. тчательно протестирую и отпишусь если факаблы выпадут
Axbor
Kozimjon
Ребят, всем привет, подскажите пожауйста куда копать, уже 3 дня над этим сижу - под капотом mvp, kotlin, retrofit, rxjava, socket. Есть фрагмент со списком+презентер - в презентере через апи получаю список, инициализирую адаптер и передаю адаптер в фрагмент, где инициализирую recyclerView с этим адаптером. До этого момента все отлично. Далее в каждом элементе списка есть кнопка Зашифровать, при клике по которой в презентере срабатывает метод, который по сокету запускает процесс на сервере. С этим тоже все норм. Здесь же подписываюсь на событие сокета, через который получаю прогресс с сервера - вот этот прогресс мне надо вывести в тот элемент списка, в котором была нажата кнопка. Что я пробовал:
1. Пробовал через DiffUtil - тупо ничего не обновляет
2. пробовал при эмите сокета обновлять list и вызывать notifyDataSetChanged у адаптера
3. пробовал слушать эмит сокета внутри самого адаптера
и еще много чего -но все выбрасывает с ошибкой о том, что другие потоки не могут изменять элементы ui потока и другие ошибки
Если знаете какой пример хотя бы похожий - подскажите а, уже устал гуглить, заранее спасибо
Kozimjon
Ребят, всем привет, подскажите пожауйста куда копать, уже 3 дня над этим сижу - под капотом mvp, kotlin, retrofit, rxjava, socket. Есть фрагмент со списком+презентер - в презентере через апи получаю список, инициализирую адаптер и передаю адаптер в фрагмент, где инициализирую recyclerView с этим адаптером. До этого момента все отлично. Далее в каждом элементе списка есть кнопка Зашифровать, при клике по которой в презентере срабатывает метод, который по сокету запускает процесс на сервере. С этим тоже все норм. Здесь же подписываюсь на событие сокета, через который получаю прогресс с сервера - вот этот прогресс мне надо вывести в тот элемент списка, в котором была нажата кнопка. Что я пробовал:
1. Пробовал через DiffUtil - тупо ничего не обновляет
2. пробовал при эмите сокета обновлять list и вызывать notifyDataSetChanged у адаптера
3. пробовал слушать эмит сокета внутри самого адаптера
и еще много чего -но все выбрасывает с ошибкой о том, что другие потоки не могут изменять элементы ui потока и другие ошибки
Если знаете какой пример хотя бы похожий - подскажите а, уже устал гуглить, заранее спасибо
в презентере: красное - запускаю процесс на сервере (все отлично тут), синее - слушаю событие сокета, прогресс в лог выводится, но вот обновлять список не получается
Ivan
Ребят, всем привет, подскажите пожауйста куда копать, уже 3 дня над этим сижу - под капотом mvp, kotlin, retrofit, rxjava, socket. Есть фрагмент со списком+презентер - в презентере через апи получаю список, инициализирую адаптер и передаю адаптер в фрагмент, где инициализирую recyclerView с этим адаптером. До этого момента все отлично. Далее в каждом элементе списка есть кнопка Зашифровать, при клике по которой в презентере срабатывает метод, который по сокету запускает процесс на сервере. С этим тоже все норм. Здесь же подписываюсь на событие сокета, через который получаю прогресс с сервера - вот этот прогресс мне надо вывести в тот элемент списка, в котором была нажата кнопка. Что я пробовал:
1. Пробовал через DiffUtil - тупо ничего не обновляет
2. пробовал при эмите сокета обновлять list и вызывать notifyDataSetChanged у адаптера
3. пробовал слушать эмит сокета внутри самого адаптера
и еще много чего -но все выбрасывает с ошибкой о том, что другие потоки не могут изменять элементы ui потока и другие ошибки
Если знаете какой пример хотя бы похожий - подскажите а, уже устал гуглить, заранее спасибо
notifyItemChanged(index, payload)
Ivan
затем обнавляешь в onBindViewHolder() который с payloads
Ivan
само собой когда приходит ответ с сервера о прогрессе надо знать какой элемент списка тебе надо обновить
Ivan
если ты знаешь его идентификатор, то по нему ты можешь найти его в списке и таким образом узнать индекс
Ivan
payload это просто новая инфа типа Any, не обязательно объект списка
Kozimjon
Ivan
Anonymous
Ребята, а кто-нибудь писал диссертацию научную и чтобы в ней типо было использование android или IOS , ну и в сочетании с умными алгоритмами (ML+DeepLearning) ?
Artem
Anonymous
Ну, где мне найти такую крутую диссертацию, чтобы сделать также и лучше ?
Vladislav
Всем привет! такая проблема с форграунд серивсом образовалась. если экран горит, то он работает. если выключаешь экран, то он заспыает, и проосыпается может каждые минут 10. я сделал чтобы уведомление сверху висело - ничего не работает. что еще можно сделать чтобы при блокировке все равно работало?
Сергей
Formatting Numeric Print Output (The Java™ Tutorials > Learning the Java Language > Numbers and Strings)
https://docs.oracle.com/javase/tutorial/java/data/numberformat.html
Сергей
Сергей
Ну можно и так. Для отрицательных правда это даст забавный результат, но у нас их не будет
Denis
Ivan
ну да, потому что в сокетах там явно все не в главном потоке работает. Я так понимаю ты никакие корутины не используешь, что похорошему надо бы было и вся эта логика тоже не в презентере должна быть конечно. В таком случае вижу здесь только Handler(Looper.getMainLooper()).post { notifyItemChanged }
Ivan
ну или в презентре п-любому должна быть ссылка на активити контекст и тогда activity.runOnUiThread { notify() }
Ivan
ну по идее это надо углубляться в чистую архитектуры, смотря по твоему опыту это все конечно
Kozimjon
Ivan
удачи
Kirill
Подскажите, как бороться с проблемой, если в intent.getStringExtra(CHAT_MSG) приходит что-то что не подходит в enum MessageOwner?
messageItem.setIsYou(MessageOwner.valueOf(intent.getStringExtra(CHAT_MSG).toUpperCase()));
public enum MessageOwner{
@SerializedName("clnt")
USER,
@SerializedName("admin")
SERVER }
Michil Shkulyov
alex
alex
Посоветуйте как сделать такой слайдер?
Denis
alex
Чтобы при клике фулскрин раскрылся
alex
alex
Поищем
Kirill
RecyclerView горизонтальный или ViewPager, вешай на него клик, по клику открывай окно/фрагмент, в нем так же ViewPager или RecyclerView
alex
С другой стороны наверное если фотка и доп кнопки на фулскрине то без фрагмента никак
Denis
Denis
и не будет проблем
Kirill
Denis
реализация проще получается. Возможностей для оптимизации тоже больше