Быстрый вопрос, вам нужен индикатор выполнения?
Из того, что я прочитал, вы не имеете ни малейшего представления о предполагаемом времени, только то, что каждый кусок равен 20%, и вы не знаете, как долго каждыйкуски или их время для прохождения, но вы хотите, чтобы планка двигалась более плавно, чем большие 20% завершенных кусков.
Поскольку у вас есть только 5 точек измерения, если вы не можете добавить еще один уровень прогресса для каждой задачичтобы сообщить, иначе вы застряли в догадках.
Если вы хотите угадать, вы можете сделать приблизительную оценку времени, которое займет задание.Опять же, основываясь на поставленной задаче, вы можете сделать хорошую или плохую оценку путем жесткого кодирования ожидаемого времени.Трюк, о котором вы просите, выглядит как прогресс (скрыть тот факт, что вы находитесь в неопределенной точке операции 1/5)
Теперь счетчик медленно поднимается к следующей отметке в течение заданного времени (скажем, 1минут), но по мере приближения времени уменьшайте прогресс, это будет означать, что вы будете видеть, как полоса движется быстрее или медленнее, когда вы приближаетесь к ожидаемой следующей точке.У вас будет прогресс, но это будет чисто случайное предположение.Если задание завершается раньше, у вас есть «пропущенный»%, чтобы увеличить следующий пробел в прогрессе, если медленный, то полоса замедляется все больше и больше.
Это много дополнительной работы, чтобы показать что-то, что вводит в заблуждениев лучшем случае, чтобы показать, что прогресс не застрял, вы можете поискать другие варианты вместе с индикатором выполнения.