Pull to refresh

App Store style кастомизируемая кнопка загрузки

Reading time 1 min
Views 8.5K
github.com/PavelKatunin/DownloadButton

Недавно появилась потребность сделать кнопку загрузки для видео, сам этап загрузки был очень похож на стандартную кнопку загрузки приложений в Appstore, но только линия, отображающая уже загруженные данные, должна была быть снаружи. Я подумал, что такой контрол может быть удобен для отображения загрузки разных вещей и что он может пригодиться где-то еще — и вынес его в отдельный фреймворк и оформил в виде cocoapods. Опубликован под Apache 2.0.

Очень приветствуется использование, редактирование кода, заведение issue на github, предложения по новым фичам и отправка пул реквестов.

За дефолтный внешний вид я взял похожий на тот, что использует Apple в Appstore (ну а какой еще?).

Кнопки можно кастомизировать и довести например вот до такого состояния:

Где это имело смысл, я постарался сделать возможность редактирования через IB (IB_DESIGNABLE, IBInspectable):

Подключается он как и все поды просто, достаточно 2-х строчек:
pod "DownloadButton"

#import <DownloadButton/PKDownloadButton.h>


В репозитории есть Sample project. Вот он github.com/PavelKatunin/DownloadButton/tree/master/Example
Проект еще сырой, и ему еще нужно обеспечить CI и тестирование.

Буду рад, если кто-то будет использовать его в своих проектах.

В комментариях предлагаю обсудить:
Какие UI-компоненты из приложений Apple вы используете в своих продуктах, но при этом они не предоставлены в стандартном iOS SDK?
Tags:
Hubs:
+15
Comments 3
Comments Comments 3

Articles