Никита
начал бы с того, что захватился position из bind. По идее IDE должна кричать, что так нельзя.
эмм...как бы так много кто делает. С чего ты взял, что нельзя захватывать позицию в bind ?
Mike
эмм...как бы так много кто делает. С чего ты взял, что нельзя захватывать позицию в bind ?
Ещё раз: в IDE есть инспекция, она и должна объяснять, почему. Кто так делает?
Никита
Ещё раз: в IDE есть инспекция, она и должна объяснять, почему. Кто так делает?
Ну когда ищещь в гугле как сделать выделение итемов, там примерно такая инструкция. Тем более как мне кажется не в этом дело, если по логу получается, что при тапе отрабатывает toggleSelection в ViewHolder и в логе я вижу: D/AirTravelSelectionTicketsAdapter: toggleSelection: SELECT Но вью остается не выделенной как бы
Mike
Ну когда ищещь в гугле как сделать выделение итемов, там примерно такая инструкция. Тем более как мне кажется не в этом дело, если по логу получается, что при тапе отрабатывает toggleSelection в ViewHolder и в логе я вижу: D/AirTravelSelectionTicketsAdapter: toggleSelection: SELECT Но вью остается не выделенной как бы
Короче, план такой: — по событию нужно менять состояние в SparseArray и вызывать notifyItemChanged — внутри bind нужно смотреть на это состояние и выставлять его во вью (или сбрасывать) — нельзя захватывать позицию — ой, и не надо плодить стрингбилдеры. Выглядит как результат работы примитивного декомпилятора
Никита
проблема в том, что каждый первый раз там итем не хочет отображать изменение состояния
Никита
а в байнде оно никак не используется
в баинде у меня SparseArray используется, чтобы передать состояние уже в вьюхолдер
Никита
Да, и на этом всё
а что еще дожно быть?
Mike
а что еще дожно быть?
А что произойдёт, если ты достанешь данные и передашь их в функцию, а функция их проигнорирует?
Mike
какая функция?
Ну ты передаёшь флаг в функцию/метод bind вьюхолдера, например.
Никита 🙃
Ребят, ловлю такую ошибку во время Build'a с javacv: More than one file was found with OS independent path 'org/bytedeco/javacpp/windows-x86/api-ms-win-core-libraryloader-l1-1-0.dll' Насколько я понял из гугления, надо сделать exclude, но все варианты что гуглил не работают (пример: configurations { all*.exclude group: 'org.bytedeco', module: 'javacpp-presets' }) Кто-то сталкивался с таким, может, и знает это исправить?
Никита
Ну ты передаёшь флаг в функцию/метод bind вьюхолдера, например.
я понял о чем ты, что тип я этот флаг должен обработать. Но это относится к кейсу, когда происходит пересоздание итемов и нам нужно обновить состояние вью исходя из SparseArray. А сейчас у меня кейс, что все создалось нулевое. Пока ничего не уничтожается и с самого начала они (итемы) не хотят менять состояние по первому тапу
Никита
Так в тоггл же есть нотифай, 83 строка. Байнд вызывается снова.
подожди, а это инфа сотка? Или необязательно такое может проихойти?
Никита
хз, там два тоггла, я уже не понимаю.
я тож, пездос я наговнокодил
Den
Den
Привет! Ребята, подскажите пожалуйста, возможно кто-то тут хорошо знает mavigtion controller. Уменя есть BottomNavigationView в котором три кнопки. При нажатии на кнопку происходит переход на другой фрагмент. Вопрос: как сделать так, что бы при присутствии на определенном фрагменте, кнопка отвечающая за переход на этот фрагмент была неактивна?
Никита
хз, там два тоггла, я уже не понимаю.
тогда такой вопрос, при смене состояния итема я дожен обязательно вызывать notifyDataSetChanged() ?
Вячеслав
Привет всем
Сергій
а может кто-то доступно объяснять причины для использования startForegroundService()? мне нужно запустить сервис, но так, чтоб foreground он был не всегда, а только при определенных условиях. нормальное ли решение пользоваться старым добрым startService() для всех версий SDK, и вызывать startForeground() только когда это нужно, а не сразу при запуске сервиса?
Foreground сервис нужен тогда когда должна выполняться длительная фоновая операция. Например, воспроизведение музыки, отслеживание геолокации и тд. С foreground сервисом система не убивает приложение когда оно находится в фоне. Начиная с андроид 8 нельзя стартовать сервисы когда пользователь свернул приложение, то-есть, startService() вызовет ошибку в этот момент. Для фоновой работы в таком случае, если не хочешь foreground надо использовать Job сервисы: JobScheduler, JobIntentService или взять готовый враппер над всем этим WorkManager.
roman G
накатил последнюю версию студии на ubuntu, теперь постояннные зависания началось с того, что студия не видела layout котоырй я пытался указать (clean и ребилдинг не помогли), решил перезапустить студию и теперь зависло окно выхода. Его можно перемещать, но нельзя кликать или закрыть Кто сталкивался?
Евгений
Подскажите пожалуйста. Обновился до студии 3.3, теперь в проекте не могу перейти к файлу ресурса при клике по нему в коде - кидает в класс R. Как можно исправить? только заново проект клонировать с гита?
Евгений
Евгений
Вячеслав
http://prntscr.com/m7ejgg - подскажите что это
Kanstantsin
Использовать AndroidX
Alexey
http://prntscr.com/m7ejgg - подскажите что это
Я так понимаю, что это использование AndroidX (https://developer.android.com/jetpack/androidx/) зависимостей вместо стандартных android. AndroidX рекомендуется к использованию, т.к. android более не мейнтейнится
Kanstantsin
Я думаю
Alexey
Тоже такой вопрос, больно странная менюшка создания проекта - не видел никогда такую @directorpride Используете бета студию?
Pavel
Ребят, ловлю такую ошибку во время Build'a с javacv: More than one file was found with OS independent path 'org/bytedeco/javacpp/windows-x86/api-ms-win-core-libraryloader-l1-1-0.dll' Насколько я понял из гугления, надо сделать exclude, но все варианты что гуглил не работают (пример: configurations { all*.exclude group: 'org.bytedeco', module: 'javacpp-presets' }) Кто-то сталкивался с таким, может, и знает это исправить?
Скачай binary archive который в readme указан, там возьми ffmpeg.jar, opencv.jar, javacv.jar, javacpp.jar закинь их в app/libs. В архиве будут лежать jar'ники на подобие ffmpeg-android-arm64 заходишь внутрь jar'ника копируешь из папки lib .so закидываешь к себе в проект в папку jniLibs Добавь либу ReLinker, с помощью нее загрузи добавленные so
Alexey
Хотел человеку помочь, а его забанили)
Вячеслав
Использовать AndroidX
Я читать умею, хочу спросить что это такое - AndroidX
Вячеслав
Windows 10, не понимаю какое это имеет значение
Вячеслав
Тоже такой вопрос, больно странная менюшка создания проекта - не видел никогда такую @directorpride Используете бета студию?
А она бета есть? Я скачал все с сайта, начал использовать. Сегодня обновление вышло очередное
Вячеслав
окей гугл
Ты и тут помогаешь я смотрю )))). Я с гуглом дружу и перед тем как писать 20 минут по внутреннему стандарту гуглю
Вячеслав
3.3
Dmytro
тоже с 3.2.*
странно, если найдешь решение - сообщи плес
Евгений
странно, если найдешь решение - сообщи плес
Ок. У коллег поспрашивал - такая-же фигня. Попробовал заново клонировать проект - всё-равно не помогло(
Kanstantsin
Я читать умею, хочу спросить что это такое - AndroidX
ну бла, это довольно обширное понятие, и там по сравнению с саппортом, я бы читал доку, там много пунктов в AndroidX
Вячеслав
Если вы хотите использовать AndroidX в новом проекте, вам нужно установить compile SDK на Android 9.0 (API level 28) или выше и установить оба из следующих ОС Android Gradle в плагин флаги
Вячеслав
Я понял что это какая то отдельная библиотека и разработка будет вестись на ней в дальнейшем
Евгений
рестарт, инвалидация кэшей. Но точно не клонировать заново.
clean project, restart & invalidate пробовал. клонирование в новую директорию обычно в 100% случаев решало все подобные проблемы
Вячеслав
Но исходя из строки выше - если проекту нужна почти полная поддержка устройв, а это с 4.4 - значит толку от нее нет
Вячеслав
Что?
Ну как ответить на такой вопрос? )))
Вячеслав
AndroidX артефакты что такое?
Вячеслав
Я уже 3 раз про галочку спрашиваю
Mike
AndroidX артефакты что такое?
Это как support library, только более стильно и модно
Вячеслав
Ссылку дал участник - я прочитал, благодарен. Вопросов стало еще больше
Сергій
Уже сотый раз подтверждается факт что альфа версии студии работают лучшие чем стабильные. Самое время обновится на 3.4 😏
Сергій
Все багфиксы в canary, все фичи в stable? :)
Ну багфиксы точно сначала мержат с канари
Сергій
Это факт
Alexey
Ссылку дал участник - я прочитал, благодарен. Вопросов стало еще больше
Тогда держите вот такую ссылку. https://tproger.ru/translations/androidx-changes-review/ Надеюсь, что тут всё будет понятнее для Вас)
Sasha
Ребят, у кого в проекте NDK, нормально на 3.3 обновились? Билд варианты не помножились?
Sasha
А то сейчас на каждый вариант создалось 4, как будто указано генерировать вариант на каждый ABI
Stanislav
Ребят у кого нибудь было "keystore load: Keystore was tampered with, or password was incorrect" , при попытке сгенирировать подписанный Bundle, при том что подписанная apk норм генериться?
Den
Ребята, подскажите пожалуйста, возможно кто-то тут хорошо знает mavigtion controller. У меня есть BottomNavigationView в котором три кнопки. При нажатии на кнопку происходит переход на другой фрагмент. Вопрос: как сделать так, что бы при присутствии на определенном фрагменте, кнопка отвечающая за переход на этот фрагмент была неактивна?
Евгений
Немного не то, но может поможет https://t.me/startandroid/670
Не то, не помогло это) Говорят на 3.4. такая-же проблема.👌
Max
пытался понять чем onChanged отличается от onInvalidated ... теперь всё ясно private class PagerObserver extends DataSetObserver { PagerObserver() { } @Override public void onChanged() { dataSetChanged(); } @Override public void onInvalidated() { dataSetChanged(); } }
Pavel
Кто-нить сталкивался с проблемой, что AS слишком долго индексирует, делаешь билд, зависает на индексации, переключаешь ветку, зависает на индексации. Инвалидейт и рестарт не помогает.