Material Components for iOS (MDC-iOS) help developers execute Material Design. 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.
Some Material components are intentionally not made available on iOS because you should use native components on Apple's platforms instead. This includes checkboxes, radio buttons, and switches (use UISwitch and UITableView instead) and data tables and image lists (use UITableView / UICollectionView instead).
If a component is missing and not listed above, you can file a feature request via https://github.com/material-components/material-components-ios/issues/new?assignees=&labels=&template=Feature_request.md
-
ActivityIndicator A circular rotating indicator for showing indeterminate or determinate progress.
-
AnimationTiming Animation timing easing curves create smooth and consistent motion.
-
AppBar A flexible navigation bar, designed to provide a typical Material navigation experience.
-
ButtonBar A view that facilitates the creation and layout of a horizontally-aligned list of buttons.
-
Buttons Material buttons, including a flat button, a raised button and a floating action button.
-
CollectionCells Collection view cell classes that adhere to Material layout and styling.
-
CollectionLayoutAttributes Allows passing layout attributes to the cells and supplementary views.
-
Collections Collection view classes that adhere to Material layout and styling.
-
Dialogs A presentation controller that will display a Material modal dialog.
-
FeatureHighlight Highlights a part of the screen in order to draw users' attention.
-
HeaderStackView A view that coordinates the layout of two vertically-stacked bar views.
-
Ink A visual ripple of ink expanding outward from the user’s touch.
-
PageControl A drop-in Material replacement for UIPageControl.
-
ShadowElevations Provides the most commonly used elevations specified in material.
-
ShadowLayer A shadow which uses Material principles for visualizing depth.
-
Slider A Material control for selecting from a range of values.
-
Tabs A material tab bar for switching between grouped content.
- How To Use MDC-iOS
- Demo Apps
- Contributing
- MDC-iOS on Stack Overflow (external site)
- Material.io (external site)
- Material Design Guidelines (external site)