Ali
Подскажите))
т.е. у тебя там что-то вроде шторки? типа один элемент расширяется, другие сокращаются?
Line'R
Почему бы не обращаться к адаптеру, в адаптере изменять ваши данные, а потом уже этому же адаптеру сообщать об изменении данных? И правильно ли я понял, вы в onBindViewHolder обращаетесь к ещё одному ресайклеру?
Ali
судя по рисунку там можно вообще просто кастомный вью собрать и не париться
Line'R
Можно и так. Я просто не встречал recyclerview в recyclerview) да и мне такая конструкция не пригождалась
Line'R
Там не вложенные recyclerview
По вашему описанию именно так это выглядит
Line'R
Более внятно описывайте хотелки)
Anton
А тут можно заюзать просто gridlayoutmanager?
Используется кастомный gridLayoutManager, потому что колонки разной размерности
Ali
слушай мне кажется что тебе легче собрать кастомную вьюху иработать тупо с логикой самой вьюхи
Mike
Используется кастомный gridLayoutManager, потому что колонки разной размерности
GridLayoutManager поддерживает ячейки, занимающие разные количества колонок.
Mike
А как быть с чекбоксами?
Положить их в свой кастомный layout так же, как они легли бы в ресайклер или ещё куда угодно.
Ali
А как быть с чекбоксами?
лисенер вешаеш на каждую вьюху и настраиваеш реакцию вьюхи
Ali
А как быть с чекбоксами?
она (реакция) же у тебя не рендомная а основана на какой то лигике. вот и впихни ее внутрь вью
Anton
она (реакция) же у тебя не рендомная а основана на какой то лигике. вот и впихни ее внутрь вью
Ну я навешивал листенеры на чекбоксы, впихивал туда логику, но при клике получаются фризы, т.к. вызывается onBindViewHolder
Никита 🙃
Ну я навешивал листенеры на чекбоксы, впихивал туда логику, но при клике получаются фризы, т.к. вызывается onBindViewHolder
Знаем, плавали. В начале убирай вссе листенеры, сеть данные, потом сеть листенер
Alexey
Всем привет! Есть задача, написать приложение, которое сможет управлять камерой и звуком в Skype либо в других подобных приложениях. Нужно чтобы при видео звонке через skype, приложение могло отключать/включать передачу видео-потока с камеры и также перехватывать аудио поток для чтения и записи в поток. Смотрел в сторону эмуляции оборудования на Android, чтобы в skype можно было бы например выбрать виртуальную камеру и аудио устройство, но не понятно как такое можно реализовать. Быть может кто-то с таким сталкивался и подскажет куда следует смотреть?
Евгений
Если бы каждый вот этот viewholder был recyclerview, то можно было бы для всех них использовать один общией recycledViewPool. У вложенного ресайклера бы Т.е. логика получается такая, что каждый этот вьюхолдер будет иметь доступ к общему пулу вьюх(чекбоксов) и не будет меньше лишних созданий вьюх, будет меньше фризов. ___ Но было бы предпочтительнее сделать всё в одном ресайклере. А если для этой группы чекбоксов нужен общий фон например, то можно заюзать itemdecoration, и там ручками нарисовать фон для них.
Alexey
Да вот и я тоже думаю, что это больше похоже на хак системы...
Line'R
Подскажите как лучше будет. Есть приложение, оно берет данные для своей работы из firebase, правильно ли будет хранить локальные данные на устройстве и при нужде обновлять их вместо получения напрямую с облака? Таким образом по идее скорость и ux улучшиться.
Ali
да я вообще не думаю что это реальный заказ. тупо развод какой то дешевый.
Alexey
не касаясь технической стороны вопроса. каким образом заказчик представляет себе отключение работы камеры незаметным для людей ведущих видеозвонок?
Предпологается, что это будет некая система видеоконференции, построенная поверх skype или других подобных соединений
Alexey
Гугл такое в маркет не пропустит
публикация не планируется
Line'R
И ещё вопрос, не читал ещё. Т.к. до публикации в маркете ещё далековато. Требует ли Гугл шифрования личных данных (имена, фамилии, номера телефонов, местоположение и тд) которые хранятся на устройстве?
Line'R
Имеется ввиду локальные данные
Line'R
Которые идут с облака итак шифруются
Alexey
Каким образом можно перехватить видео поток с камеры, изменить его и отправить снова в выходнойп поток, знает кто?
Andrew
Доброго времени суток. Может ли кто нибудь подсказать куда мне двигаться. Такая задача. Есть recycler view c кастомным layout manager, в нем есть вьюхи произвольного размера(зависят от входных данных) Внутри каждой вьюхи я создаю чекбоксы(их количество тоже не могу знать заранее, поэтому создаю их в onBindViewHolder). В onCcheckedChanged() отлавливаю изменение состояния чекбокса и вызываю anotherRecyclerView1.notifyItemChanged(checkbox.columnIndex) и anotherRecyclerView2.notifyItemChanged(checkbox.rowIndex). После этого вызывается onBindViewHolder у главного recyclerView и получается фриз. Вопрос, как можно реализовать данную задачу без фризов? (при клике на чекбокс изменять элементы в других recyclerView)
Я конечно может не прав, но почему бы просто не написать интерфейс который будет брать твой блок чекбоксов, получать нужные айди кликнутого чекбокса и возвращать тебе этот чекбокс? Вроде как тогда не должно грузить систему
Anton
не надо словами, ты код покажи :)
https://pastebin.com/NhJHeM9t ну вот тут генерю checkBox -ы
Line'R
Никак. Даже не все телефоны позволяют одновременно использовать камеру разным приложениям, а вы хотите подменять поток. Это не законно, раз. Во вторых, повторю - невозможно это сделать штатными средствами android
Andrew
https://pastebin.com/NhJHeM9t ну вот тут генерю checkBox -ы
я не оч в котлине, но ты чтоли на каждый чекбокс вешаешь отдельный листнер?
Andrew
да, в этом косяк сейчас
НУ так а зачем тебе вешать на отдельный чекбокс если ты можешь повесить на весь айтем листнер и в зависимости от кликнутого чекбокса передавать его айди
Anton
идею, понял, но немного не догоняю, как передать id
Anton
передам интерфейс в листенер?
Anton
checkBox - занимается 1 клетку грубо говоря, а элемент в recylcerView может занимать больше, например 5(сооствественно позиции будут меняться)
Andrew
checkBox - занимается 1 клетку грубо говоря, а элемент в recylcerView может занимать больше, например 5(сооствественно позиции будут меняться)
В данном случае твой элемент ресайклервь это контейнер( линеар лейаут ) внутри которого есть группа чекбоксов( 1 3 10 не важно) Ты вешаешь на весь этот контейнер слушатель, который слушает какой элемент кликнут.
Ali
https://android.jlelse.eu/app-rating-bar-making-a-compound-viewgroup-in-android-adb2bd25f4cc
Shiko
всем привет, такой вопрос: никто не пробовал проводить ui тесты на релизной версии apk? тяжело такое запускается? с какими проблемами сталкивались?
Ali
из ссылки что я кинул тебе надо понять что можно сгруппировать какие то вью в отдельно взятый обхект. вписхуть туда логику, повесить на него лисереры и подписать их же самих как слушателей.
Anton
из ссылки что я кинул тебе надо понять что можно сгруппировать какие то вью в отдельно взятый обхект. вписхуть туда логику, повесить на него лисереры и подписать их же самих как слушателей.
как я понимаю там ответ на вот это "Ты вешаешь на весь этот контейнер слушатель, который слушает какой элемент кликнут." Хорошо, почитаю, спасибо)
Ali
а чекбоксам можно давать атрибут видимости, присвайвать айди и вообще делать с ними все что хочеш
Shiko
всем привет, такой вопрос: никто не пробовал проводить ui тесты на релизной версии apk? тяжело такое запускается? с какими проблемами сталкивались?
у меня в релизе просто включена минификация/обфускация, хочу чтобы ui тесты заодно проверяли, не вырезано ли чего лишнего
Ali
про слушатель найди любой простенький пример патерна наблюдателя
Kotor
Привет! Если я с помощью NavigationComponent иду из фрагмента А во фрагмент В и потом обратно то до вызова OnCreateOptionsMenu само menu по прежнему существует но там нет элементов даже если до перехода были (адрес объекта menu в памяти тот же). Как будто бы кто то в системе вызывает menu.clear(). Никто не сталкивался?
Anonymous
ПРИвет, Как сделать, чтобы не указывать lateiniе var у параметров класса.?
Anonymous
var socket : Socket? = null
типо просто инициализировать всё нулом
Mike
ПРИвет, Как сделать, чтобы не указывать lateiniе var у параметров класса.?
Иметь метод init — очень плохая идея. Вся инициализация должна быть в конструкторе, объект должен быть юзабелен с самого начала.
Mike
блин, я слышал что в конструкторе по минимуму логики должно быть
в принципе да, можно вынести её куда-то наружу
Anonymous
понял, спасибо
Anonymous
в принципе да, можно вынести её куда-то наружу
то есть по факту я могу сразу проинициализировать все поля так, без поля init?
Mike
то есть по факту я могу сразу проинициализировать все поля так, без поля init?
Да, вполне, но лучше бы сделать отдельный фабричный метод connectClient, чтобы по названию было понятно, что там делается IO (оно же там делается? Я не в курсе, это догадка)
Ярослав
то есть по факту я могу сразу проинициализировать все поля так, без поля init?
более того, ты можешь описать несколько init { } между полями
Nikita
Всем привет, кто-нибудь работал с внешними камерами (UVC)? Какие библиотеки посоветуете? Уже несколько либ попробовал, но большинство не рабочие
Yank
всем привет, использую swiperefreshlayout внутри которого recyclerview. при свайпе вниз и не отпуская палец вернуть обратно индикатор, он не доконца прячится, кусочек от него торчит😄 что делать ?
Yank
Yank
такое везде
Как бороться? Это же не эстетично)
Ярослав
хотя вроде можно ему какой-то оффсет задать var startOffset = progressViewStartOffset startOffset += resources.getDimensionPixelOffset(R.dimen.dense_action_bar_spinner_offset) setProgressViewOffset(/* scale */ true, startOffset, progressViewEndOffset)
Alexsandr
Привет Может найдуться умельцы которые подскажут как поменять увет элементов в status bar, а то почему то если его делаешь белым, элементы так и остаються белыми
Konstantin
Что лучше использовать для общения с джаваскриптом в вебвьюшке. Как понимаю если код доверенный то JavaScriptInterface, если нет то WebMessagePort ? В чем у них еще существенная разница - не могу определиться что выбрать? Код доверенный, источик проверяю, верся выше Android M
Alexey 🇪🇸
Ребят, кто работал с background jobs? Использую evernote android jobs. В общем почему-то переодические задачи немного по-разному работают на 6 андроид (23 апи) и на андроид версиях выше. На 6м ведре первый раз джоба стартует после заданного интервала, а на остальных версиях сразу при запуске и потом после заданного интервала повторяется Кто знает почему так и это дело в либе или в версии ведра?