Как сделать Arc Progress Bar в Swift? - PullRequest
0 голосов
/ 13 февраля 2019

Я хочу создать индикатор хода выполнения дуги в качестве аудиоплеера, но я не получаю точное представление.

Я также пробовал некоторые сторонние библиотеки, но индикатор выполнения отличается от требуемого.

Это то, что я хочу https://drive.google.com/file/d/1OIrRCgqJHxUzQCAZn3t23dDwjqdvIvkp/view?usp=sharing

, но это то, что я получаю https://drive.google.com/file/d/14Lh367bWR1nA7_XIXepZudpnb5hsdOkY/view?usp=sharing

Ответы [ 2 ]

0 голосов
/ 13 февраля 2019

Этого можно добиться с помощью Autolayout и некоторого изменения радиуса с помощью библиотеки ниже.

Библиотека: https://github.com/EranBoudjnah/MTCircularSlider

Настройка автоматического размещения для Circular Slider:

  1. Выровнять Center X по Superview.

enter image description here

Пропорциональная ширина для суперпредставления (множитель - 1,2).

enter image description here

Пропорциональная высота суперпредставления (множитель - 0,7).

enter image description here

Внизу от 0 до суперпредставления.

enter image description here

Этим вы можете достичь своего макета.

Теперь 2-й шаг кДля ограничения ползунка вам необходимо установить радиус ползунка в соответствии с вашими требованиями к дизайну.

В соответствии с приведенным выше макетом радиус должен быть таким, как показано ниже.

Track Min Angle : 27

Track Max Angle : 153

При установке угла выше вы будетедостигните своего ползунка так же, как и изображение ref.

Ref Output:

enter image description here

Надеюсь, это поможет вам достичь цели.

0 голосов
/ 13 февраля 2019

Прежде всего, это не 180 градусов, что вы хотите, как видно на картинке.Поэтому, во-первых, вы можете попробовать увеличить его радиус, слегка сдвинуть его и установить минимальные / максимальные углы соответственно.Однако я бы порекомендовал реализовать свой собственный контроль, так как вы не будете полагаться ни на какую библиотеку, и это даже не сложно.Вы можете попробовать этот учебник, например, на raywenderlich.com .

...