Все записи категории ‘Kotlin’

Синглтон и даблчек

 25 Фев, 2025

Рассмотрим использование двух паттернов программирования в kotlin — singleton и doublecheck.

Читать далее »

Как превратить один тип LiveData в другой

 22 Фев, 2025

В случаях когда один тип LiveData требуется преобразовать в другой, используют медиаторы.

Читать далее »

Передача параметров при создании viewModel

 17 Фев, 2025

Распространенная задача — при создании viewModel требуется передать параметры из активити или фрагмента.

Читать далее »

View Binding в kotlin

 15 Фев, 2025

Иногда на собесах спрашивают что такое view binding, и звучит это как некая сложная тема, но на самом деле, это просто фича сборщика, которую можно использовать для упрощения доступа к элементам шаблонов.

Читать далее »

Работа с фрагментами в kotlin

 13 Фев, 2025

Небольшой гайд по работе с фрагментами в android studio.

Фрагменты чем то напоминают фреймы в html. Фрагменты обладают многими возможностями, которые есть у активити (Activity), имеют свой lifecycle, также работают с viewModel и т.п. И конечно же фрагмент имеет собственный шаблон (layout).

Но при этом, фрагмент можно встроить в другой шаблон (используя контейнер FragmentContainerView) и запрограммировать логику активити или другого фрагмента, чтобы он подключал нужный фрагмент, где инкапсулирована требуемая логика.

Читать далее »

Cannot find implementation for Database. Database_Impl does not exist (Room)

 11 Фев, 2025

Данная ошибка при работе c Room обычно связана с неполным или неверным описанием в gradle файлах, связанных с обработчиком аннотаций. Т.е. суть ошибки в том, что он просто не может прочитать аннотации, которые вы сделали к классу базы данных, и по умолчанию ищет класс с указанным в тексте ошибки именем.

Читать далее »

Автоинкремент версии билда в проекте на kotlin

 9 Фев, 2025

Куча готовых решений в сети, но почему то ничего не работает. Пришлось исследовать этот вопрос. Оказалось, что gradle.kts это тоже kotlin скрипт, который выполняется каждый раз при сборке проекта.

Читать далее »

Прерывание Toast в kotlin

 8 Фев, 2025

Всплывающее сообщение, формируемое Toast, обычно используют в стиле — создал — показал — забыл. Если сообщений много, то они ждут своей очереди, чтобы быть показанными.

Но когда ситуация меняется быстро в приложении, то сообщения могут просто не успевать за динамикой, и пользователь будет дезориентирован текущим сообщением, тогда так актуальная подсказка высветится еще не скоро.

Читать далее »

Вложенные прокручиваемые (scrollable) элементы в макете android

 6 Фев, 2025

Если вы используете, к примеру, RecyclerView компонент внутри ScrollView layout, то могут возникнуть коллизии, связанные с тем, что оба элемента пытаются обработать прокрутку.

Читать далее »

Пример реализации Swipe Gesture для любого view элемента

 29 Янв, 2025

Для списка есть класс ItemTouchHelper, который реализует свайпы для элементов списка, а хотелось бы получить реализацию этого жеста для любого элемента View.

Читать далее »