Расскажите про реализацию метода View.onDraw()
Метод onDraw() отвечает за саму отрисовку View на экране пользователя. На вход она получает объект Canvas — холст. На канвасе можно рисовать все что угодно: 2D графику, текст, обычный и стилизованный, геометрические фигуры и много чего еще. Для рисования на канвасе используется объект Paint — кисточка. Она определяет как именно нужно рисовать то, что вы решили рисовать. В объекте paint можно задать цвет, толщину, anti-alias. Также существует класс TextPaint, который используется для задания параметров отрисовки текста.
В отличии от канвас, который поступает в метод onDraw() в качестве аргумента, Paint необходимо создать самому, при этом нежелательно создавать его каждый раз в методе onDraw(), так как данный метод вызывается достаточно часто и поэтому для него важно быстродействие. Paint лучше создать один раз при создании View, а затем постоянно переиспользовать при вызове onDraw(), чтобы избежать частого выделения памяти на новые Paint()
Peer-to-peer собеседования
AI Sprints — обучение профессиям с ИИ
Практика собеседований с менторами и другими студентами. Реальные вопросы по Kotlin, Android и Backend
- Живые собеседования: практикуйте интервью с менторами и коллегами-студентами
- Реальные вопросы: база вопросов по Kotlin, Android, Backend и QA
- Фидбек: обратная связь после каждого собеседования — знаете, что улучшить
AI Challenge — собери чат-бота за 5 дней
Бесплатный марафон по AI-инжинирингу. Cursor + OpenAI, 60 минут в день — без опыта в программировании. К пятнице у вас будет рабочий чат-бот с памятью в браузере.
- Практика с первого дня, без теории «в стол»
- Готовый проект в портфолио к концу недели
- Старт в любой день — учитесь в своём темпе