material-components/material-components-ios

Name: material-components-ios

Owner: Material Components

Description: Modular and customizable Material Design UI components for iOS

Created: 2015-10-07 14:12:39.0

Updated: 2018-01-19 00:45:53.0

Pushed: 2018-01-18 19:56:21.0

Homepage:

Size: 90317

Language: Objective-C

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Material Components for iOS

Build Status Code coverage Chat

Material Components for iOS (MDC-iOS) helps 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. Learn more about how Material Components for iOS supports design and usability best practices across platforms in the Material Design Platform Adaptation guidelines.

Material Components for iOS are written in Objective-C and support Swift and Interface Builder.

Useful Links
Trying out Material Components

Our catalog showcases Material Components. You can use the pod try command from anywhere on your machine to try the components, even if you haven't checked out the repo yet:

try MaterialComponents

In case you have already checked out the repo, run the following command:

install --project-directory=catalog/

If you want to take a look at the implementation of the components, you can find the code inside the Development Pods folder. Use cmd-1 to open the project navigator within Xcode. Peal open the Pods project and inside the Development Pods folder you will find the component source code.

Installation
Requirements
Getting Started with a New Project

Check out our tutorial for a step-by-step guide to setting up a new project using Material Components.

Adding Material Components to an Existing Project

CocoaPods is the easiest way to get started (if you're new to CocoaPods, check out their getting started documentation.)

To install CocoaPods, run the following commands:

 gem install cocoapods

To integrate Material Components in your existing application, first create a new Podfile:

our-project-directory
init

Next, add the Material Components for iOS pod to your target in your Podfile:

et "MyApp" do
.
d 'MaterialComponents'

If you are using Swift, don?t forget to uncomment the use_frameworks! line at the top of your Podfile.

Then run the command:

install

Now you're ready to get started in Xcode. Don't forget to open the workspace Cocoapods created for you instead of the original project:

 your-project.xcworkspace
Usage

The components are built upon familiar UIKit classes and can be added to a view with just a couple of lines. Simply import the Material Components header for the component you're interested in, and add it to your view.

Swift
rt MaterialComponents.MaterialButtons

s ViewController: UIViewController {

override func viewDidLoad() {
    super.viewDidLoad()
    let raiseButton = MDCRaisedButton()
    raiseButton.setTitle("Raised Button", for: .normal)
    raiseButton.sizeToFit()
    raiseButton.addTarget(self, action: #selector(tapped), for: .touchUpInside)
    view.addSubview(raiseButton)
}

@objc func tapped(sender: UIButton){
    print("Button was tapped!")
}


Objective-C
ort "MaterialButtons.h"

lementation ViewController

oid)viewDidLoad {
uper viewDidLoad];

CRaisedButton *raisedButton = [[MDCRaisedButton alloc] init];
aisedButton setTitle:@"Raised Button" forState:UIControlStateNormal];
aisedButton sizeToFit];
aisedButton addTarget:self
               action:@selector(tapped:)
     forControlEvents:UIControlEventTouchUpInside];

elf.view addSubview:raisedButton];


oid)tapped:(id)sender {
Log(@"Button was tapped!");



Attributions

Material Components for iOS uses Material Design icons, copyright Google Inc. and licensed under CC BY 4.0.

Several components use MDFTextAccessibility, copyright Google Inc. and licensed under Apache 2.0 without a NOTICE file.

MDCCatalog uses the Roboto font, copyright 2011 Google Inc. and licensed under Apache 2.0 without a NOTICE file.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.