blob: f4f6bab2f51a7eea077b7247106090ffd36c3ffe [file] [log] [blame] [view] [edit]
# Component Documentation
Material Components for iOS (MDC-iOS) help developers execute [Material Design](https://material.io). Developed by a core team of engineers and UX designers at Google, these components enable a reliable development workflow to build beautiful and functional iOS apps.
Material Components for iOS are written in Objective-C and support Swift and Interface Builder.
<a name="components"></a>
<!--{: .jumplink }-->
## Components
- [**ActivityIndicator**
A circular rotating indicator for showing indeterminate or determinate progress.
](ActivityIndicator/)
<!--{: .icon-activityindicator }-->
- [**AnimationTiming**
Animation timing easing curves create smooth and consistent motion.
](AnimationTiming/)
<!--{: .icon-animationtiming }-->
- [**AppBar**
A flexible navigation bar, designed to provide a typical Material navigation experience.
](AppBar/)
<!--{: .icon-appbar }-->
- [**ButtonBar**
A view that facilitates the creation and layout of a horizontally-aligned list of buttons.
](ButtonBar/)
<!--{: .icon-buttonbar }-->
- [**Buttons**
Material buttons, including a flat button, a raised button and a floating action button.
](Buttons/)
<!--{: .icon-buttons }-->
- [**CollectionCells**
Collection view cell classes that adhere to Material layout and styling.
](CollectionCells/)
<!--{: .icon-collections }-->
- [**CollectionLayoutAttributes**
Allows passing layout attributes to the cells and supplementary views.
](CollectionLayoutAttributes/)
<!--{: .icon-collections }-->
- [**Collections**
Collection view classes that adhere to Material layout and styling.
](Collections/)
<!--{: .icon-collections }-->
- [**Dialogs**
A presentation controller that will display a Material modal dialog.
](Dialogs/)
<!--{: .icon-dialogs }-->
- [**FeatureHighlight**
Highlights a part of the screen in order to draw users' attention.
](FeatureHighlight/)
<!--{: .icon-featurehighlight }-->
- [**FlexibleHeader**
A container view whose height and vertical offset react to UIScrollViewDelegate events.
](FlexibleHeader/)
<!--{: .icon-flexibleheader }-->
- [**HeaderStackView**
A view that coordinates the layout of two vertically-stacked bar views.
](HeaderStackView/)
<!--{: .icon-headerstackview }-->
- [**Ink**
A visual ripple of ink expanding outward from the user’s touch.
](Ink/)
<!--{: .icon-ink }-->
- [**NavigationBar**
A view composed of a left and right Button Bar and either a title label or a custom title view.
](NavigationBar/)
<!--{: .icon-navigationbar }-->
- [**OverlayWindow**
A window for managing sets of overlay views.
](OverlayWindow/)
- [**PageControl**
A drop-in Material replacement for UIPageControl.
](PageControl/)
<!--{: .icon-pagecontrol }-->
- [**Palettes**
Reference colors from Material palettes.
](Palettes/)
<!--{: .icon-palette }-->
- [**ProgressView**
A determinate and linear progress indicator that implements Material animation and layout.
](ProgressView/)
<!--{: .icon-progressview }-->
- [**ShadowElevations**
Provides the most commonly used elevations specified in material.
](ShadowElevations/)
<!--{: .icon-shadowelevations }-->
- [**ShadowLayer**
A shadow which uses Material principles for visualizing depth.
](ShadowLayer/)
<!--{: .icon-shadowlayer }-->
- [**Slider**
A Material control for selecting from a range of values.
](Slider/)
<!--{: .icon-slider }-->
- [**Snackbar**
A brief dismissible feedback message.
](Snackbar/)
<!--{: .icon-snackbar }-->
- [**Tabs**
A material tab bar for switching between grouped content.
](Tabs/)
<!--{: .icon-tabs }-->
- [**Typography**
Text styles for Material fonts and opacities.
](Typography/)
<!--{: .icon-typography }-->
- - -
## Useful Links
- [How To Use MDC-iOS](../docs/)
- [Demo Apps](../demos/)
- [Contributing](../contributing/)
- [MDC-iOS on Stack Overflow](https://www.stackoverflow.com/questions/tagged/material-components+ios) (external site)
- [Material.io](https://material.io) (external site)
- [Material Design Guidelines](https://material.io/guidelines) (external site)