Alexey
Дело в том, что у меня список состоит из разных элементов. Хотя, это же не важно, да?
если geItemViewType корректно работате и в onBindViewHolder тоже то не важно, опять же, это если порядок не меняется, а если топорно и не производительно но надёжно, то notifyDataSetChanged
Глеб
Там сильно к Arch Components привязано всё
Да, точняк. к руму - точно помню - было такое
Alexey
Вот меня примерно такое же ждёт 🙈
ну я там бошку поломал, но у меня был класс посредник который это разруливалд
Alexey
Да, точняк. к руму - точно помню - было такое
рум юзал - отличная альтернатива многсловному хэлперу
Alexey
Всегда думал, что Adapter#notifyDataChanged состояние списка сбросит :)
нет, он просто переопрелит все видимые элементы
Alexey
и дальше будет жрать данные из того что есть
Aleksey
Казалось, что DiffUtil это упрощает
Alexey
он не упорщает, он делает визуальные изменения более приятными юзверю
Alexey
Казалось, что DiffUtil это упрощает
но да, в алгоритмах упрощает и всё красивр меняет местами если порядок изменился или что-то удалилось
Aleksey
Вот поэтому думаю, что его оставлю Единственное, в чем загвоздка - как избавиться от пересоздания списком при каждом обращении
Alexey
если Class.equals() гормально переопрделён, то DifffUtil сожрёт всё красиво
Alexey
там же коллбек есть
Aleksey
У меня data class из Kotlin, думаю, там все ок :)
Alexey
ну тут нужно понимать что нужно, Diffutil однозначно медленный, но, ска, красивый
Anonymous
но да, в алгоритмах упрощает и всё красивр меняет местами если порядок изменился или что-то удалилось
Без ДиффУтилс тоже анимации есть, если стабильные айдишники у айтемов. Но не сравнивал, может не все анимации.
Alexey
Без ДиффУтилс тоже анимации есть, если стабильные айдишники у айтемов. Но не сравнивал, может не все анимации.
Да настроить-то конечно можно и без диффутилсов, и без айдишников, вопрос только в том насколько это эффективно будет
Мумитроль
Народ. Всем привет. Кто-то уже обновлялся до SupportLibrary 27? Заметил ли кто проблему с анимацией фрагментов? На последнем кадре, если анимация альфы, то у исчезающего фрагмента в самом конца она на мгновние снова становится 1.
Jacob
Как досталять обновление приложения не используя гугл плей?
Anonymous
Сколько стоит поддерживать в работе приложение на 10-100 миллионов пользователей?
Mike
Как досталять обновление приложения не используя гугл плей?
Скачивать обновление, предлагать пользователю обновить. Так Firefox Nightly делает.
Fedor
Сколько стоит поддерживать в работе приложение на 10-100 миллионов пользователей?
зависит от того, что за приложение. если калькулятор - то 0, если что-то посложнее - то больше +)
Konstantin
Эх щас бы иметь 100 лямов юзеров
Vladimir
Я своё приложение не оьновлял 2 года, но оно стабильно денюжку присылает
Anonymous
Эх щас бы иметь 100 лямов юзеров
а сколько в среднем у приложений ?
Fedor
в среднем - около 0, я думаю
Konstantin
Зависит от контента
Konstantin
в среднем - около 0, я думаю
Кстати интересно есть ли такая стата
Fedor
ну где-то 5 лямов приложений, 80 лярдов скачиваний, то есть в среднем одна приложенька 16000 инсталлов
Fedor
или 0 активных пользователей +)
Artur
Привет, посоветуйте либу для камеры, чтобы она умела 1. Сохранять в галерию(в определнную папку) 2. Обновлять медиа библиотеку после добавления
Sergey
Народ, как отобразить кнопку в actionbar при нажатии на больше чем одного item в listview?
Sergey
Ясно, что это должно делаться сразу при нажатии. @Override public void onClick(View v) { if (mCheckbox.isChecked()) { mCheckbox.setChecked(false, true); mCountCheckedExercise++; } else { mCheckbox.setChecked(true, true); mCountCheckedExercise--; } if (mCountCheckedExercise > 0) { // getSupportActionBar().setDisplayShowCustomEnabled(true); } }
Artem
Как организовать авторизацию на сайте через андроид приложение?
Artem
На сайте у пользователя в случае успешного входа записывается сессия, что делать на андроид?
Artem
Её же нельзя подменить?
Mike
Sergey
action mode
Так и знал, что кто-нибудь напишет. А без наложения можно?
Artem
Куки можно поменять, сессию вроде нет
Artem
всё можно
То есть в браузере юзверь не имеет доступа к сессии в отличии от кук
Mike
Идентификатор сессии хранится в куках. Его можно удалить или заменить. Информацию на сервере, ассоциированную с ним, не подменишь, конечно.
Vadim
service.subscribeToObservable() .subscribeOn(Schedulers.io()) .flatMapCompletable { Completable.timer(1, TimeUnit.SECONDS) } .andThen { service.updateWithCompletable(blah, blah) } .subscribe()
Vadim
Почему я попадаю в " Completable.timer(1, TimeUnit.SECONDS) ", но дальше в andThen не дохожу ?
Vadim
что не так ?:(
Valdis
В сентябре-октябре вышла 9 джава. Сейчас 10 джава и вот уже 11
Valdis
https://www.infoworld.com/article/3265447/java/java-11-roadmap-the-new-features-you-can-expect.html
Valdis
Что за нах
Виктор
Народ. Всем привет. Кто-то уже обновлялся до SupportLibrary 27? Заметил ли кто проблему с анимацией фрагментов? На последнем кадре, если анимация альфы, то у исчезающего фрагмента в самом конца она на мгновние снова становится 1.
Если вы по версию 27.1.0, то коллега это тоже заметил, зарепортил гуглам Они приняли, проверили, подтвердили и в следующем релизе исправят, сказали Пока сами сидим на 27.0.2
Мумитроль
Я пытался понять в чем дело и предположил, что дело в Animation который они создают с установленных через FragmentTransaction.setCustomAnimation(enter: Int, exit: Int). Посмотрел код, оказалось, что все же есть способ руками создать анимацию для смены фрагментов, а не только через xml. Переопределил у фрагмента метод onCreateAnimator и там создал нужный мне аниматор. Как ни странно это сработало)
Мумитроль
Вынес в Extention и не страшно.
Виктор
Хитро, хитро Эх, если бы нас заапрувили котлин на проде 😔
Мумитроль
Вообще, грустно, что нельзя не через XML определить анимацию для смены фрагментов.
Мумитроль
Лишь только так, для каждого фрагмента прикручивать(
Кирилл
Пытался сейчас играться в переходами между активити, и вот что интересно стало: а когда onPause вызывается, a onStop нет? Они у меня всегда вызываются вместе. И когда всё же onDestroy? Его у меня не получилось вызвать ни разу.
Кирилл
Глеб
onPause - вызывается при потере окном фокуса. Кр справка: у активности всегда есть окно, окно это по-умолчанию фокусабельное, когда оно по лучает фокус - резюмится, когда теряет - паузится onStop - происходит при полном перекрытии окна одной активити окном другой соответствеено - чтобы железно воспроизвести onPause -only достаточно поверх твоей активности открыть любую другую неполноэкранную, например с диалог-темой или запрос пермишнов
Глеб
либо в мульти оконном режиме - ткнуть в соседнее окно, тогда первое потеряе фокус и паузится
Глеб
есть еще один кейс - когда твоя активность на переднем плане и singleTask/singleTop - и её пытаются открыть - срабатывает пара onPause/onResume (....правда....🤔.... с onNewIntent-ом посередине)
Глеб
по финишу() или кнопке "назад"
Кирилл
по финишу() или кнопке "назад"
Я так и делал - не получилось
Глеб
onDestroy - не вызвался?
Глеб
это точно Android был?🤔
Кирилл
Кирилл
onDestroy - не вызвался?
Да, не выводилось ничего в лог
Глеб
Создаём новый проект Заводим пустую активити переопределяем все основные onМетоды (не забывая супер!!!) ставим лог/точку останова - запускаем, нажимаем "назад"
Кирилл
Глеб
так эт не мы вам лечим - это logcat вам лечит))) код в студию!
Кирилл
override fun onDestroy() { super.onDestroy() info("onDestroy") }