• Stars
    star
    949
  • Rank 48,153 (Top 1.0 %)
  • Language
    Objective-C
  • License
    Other
  • Created over 11 years ago
  • Updated almost 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A custom UIView useful to represent progress in discrete steps.

MDRadialProgress

A custom UIView useful to represent progress in discrete steps.

It has the following features:

  • Draw progress in separated slices or as a single arc.
  • Can customize all colors, the distance of the slices and their thickness.
  • Clockwise and anti-clockwise drawing order.
  • Can start progress from any slice, not necessarily from the top.
  • Display a label with the current progress. The label size automatically adapts to the space available. The label can be customised with a block (new in 1.0.5)
  • Themes support for easier customization of multiple views.
  • Indeterminate mode
  • Fully accessible
  • Support iOS 6.0+
  • BSD licensed.

Screenshot

Indeterminate mode animation

Documentation

Installation

Either use CocoaPods by adding the line below to your Podfile:

pod 'MDRadialProgress'

or copy MDRadialProgress.{h|m}, MDRadialProgressLabel.{h|m}, MDRadialProgressTheme.{h|m} into your project.

Usage

There is an extensive example included in ViewController.m. Tweak it and run it to experiment.

See the RELEASE_NOTES for changes between versions.

Version 1.0 has introduced the concept of theme in order to make the customisation of many progress views simpler. If for example you have a table where in every cell you have a MDRadialProgressView, now you can create a theme with the appearance you like and apply it to all views, instead of customising each view singularly.

Dependencies

Remember to add the QuartzCore framework provided with XCode or simply import it with #import <QuartzCore/QuartzCore.h> when you want to use the indeterminate mode feature of MDRadialProgress.

Localization

The component is fully accessible and it uses two labels that can be used by VoiceOver to speak the current progress value to the user. If you want to provide localized text messages translate these two labels in your Localization.strings files:

"Progress", "Progress changed to:"

License

The License is now BSD (https://opensource.org/licenses/BSD-3-Clause).

Contributors

See the Contributors page on github.