У Uber есть статья https://www.uber.com/en-DE/blog/live-activity-on-ios/, в которой говорится, что они сделали уведомление с помощью индикатора выполнения. Я знаю, что в статье написано, что про iOS, но там есть и про андроид. Уведомление выглядит так: Уведомление, андроид справа
Я понимаю, что они сделали в xml для уведомления, но не могу понять, как они этим управляют из кода. Как они рассчитывают прогресс, если нет возможности получить ширину уведомления?
Я попробовал использовать ширину экрана и вычесть из нее какое-то значение для краев уведомления (около 110 dp). Затем установите его как левое дополнение заполненной строки индикатора выполнения.
val displayMetrics: DisplayMetrics = Resources.getSystem().displayMetrics
val screenWidth = displayMetrics.widthPixels
val edgeDistance = 100dip // take it from values file
val progress = (screenWidth - edgeDistance) * p // 0
Подробнее здесь: https://stackoverflow.com/questions/791 ... tification