Simple Custom View demo App - circular progress bar

Теги: Android, Kotlin, CustomView

Custom View - circular progress bar

В лекции курса подробно про Custom View расказанно. Поэтому тут кратко.

Добавляем кастомные аттрибуты, которые мы потом сможем использовать при создании view:

Пишем класс CustomView:

Тут не забываем релизнуть аттрибуты, после того как их прочитали styledAttrs.recycle()

В методе onDraw() не делаем никаких сложных вычислений, чтобы не загружать Main поток. Скажем, если можно создать необходимые объекты заранее, как например Paint() - то так и делаем.

В layout добавляем два экземпляра CustomView: c app:custom_style="stroke" и с app:custom_style="fill":

Для демострации используем корутины. Тут мы запускаем корутину на GlobalScope и каждую 0.1 sec сетаем новый стейт View. Но это для простоты и тестовых целей. Но в продакш GlobalScope лучше не использовать

Репозиторий - https://github.com/ziginsider/Simple-Custom-View_Android-Demo-App

05 07 2021

Теги заметки: