Несколько способов оптимизации OnDraw для ScrollViews:
Избегать создания объектов в методах отрисовки. stackoverflow.com Создание объектов часто является причиной плохой производительности рисования. stackoverflow.com
Быстро перемещать старый контент вверх или вниз, который всё ещё отображается на экране, а затем запрашивать перерисовку только «новой» части экрана. stackoverflow.com Этот метод подходит для непрозрачных представлений. stackoverflow.com
Преобразовать весь рисунок в растровый объект с помощью связанного холста, а в OnDraw просто удалить это растровое изображение. stackoverflow.com lumtu.com При изменении данных перерисовать всё в растровое изображение. stackoverflow.com
Выравнивать Layout для уменьшения циклов обращений. xamdev.ru Можно применять RelativeLayout вместо LinearLayout с использованием weights, а с компонентами stacked views лучше использовать FrameLayout. xamdev.ru
Удалять бэкграунды, которые в любом случае не показываются. xamdev.ru Также можно использовать темы бэкграундов там, где это приемлемо. xamdev.ru
Использовать 9-patch для границ и теней. xamdev.ru
Уменьшить Overdraw в собственных обращениях OnDraw. xamdev.ru
Примеры полезных ответов Поиска с Алисой на вопросы из разных сфер. Вопросы сгенерированы нейросетью YandexGPT для актуальных тем, которые определяются на базе обобщённых запросов к Поиску с Алисой.