Skip to content
Backport flat-style UIKit from iOS7 to iOS5+
Objective-C Ruby
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
Resources Replace slider thumb Sep 21, 2013
UI7KitTestApp Revert default bar color for white background. Sep 26, 2013
UI7KitTests update test Sep 20, 2014
.gitignore Fork from FoundationExtension Jun 13, 2013
.travis.yml travis Sep 20, 2014 suggested by #162 Dec 11, 2014
LICENSE Fork from FoundationExtension Jun 13, 2013
Podfile fix warnings Apr 24, 2015 Remove duplicate UI7Font entry from Nov 13, 2013
UI7Kit.png 0.9.6 preview Sep 25, 2013
UI7Kit.podspec give up complicated setup Apr 24, 2015


UI7Kit is a GUI toolkit which can backport flat-style UIKit from iOS7 to iOS5/iOS6. Additionally, UI7Kit can also be used to patch legacy UIKit to UI7Kit in runtime.

NOTE: This project is not mature yet and is being refined. You may come across some bugs or unexpected behaviors for complex real-world product.


  • Import flat-style iOS7 theme to work on iOS5/6 (Except status bar and blur effect).
  • Patch the classic UIKit to UI7Kit in runtime. (Renew your legacy app just in a line!)
  • 100% UIKit compatibility.

How to use

Case 1: Dynamic patch (Mostly recommended)

#import <UI7Kit/UI7Kit.h>
[UI7Kit patchIfNeeded]; // in main.m, before UIApplicationMain()

Case 2: Partial usage

: Use UI7 instead of UI. : ex) UI7NavigationController, instead of UINavigationController

Case 3: Partial dynamic patch

#import <UI7Kit/UI7Kit.h>
[UI7<class> patchIfNeeded]; // ex) [UI7TableView patch];

Global tint color (Optional)

[[UI7Kit kit] setTintColor:<UIColor object>]

NOTE: See below to install or setup your projects.


Example with current code. (0.9.6)

The phones on the left most column of the screenshot are iOS7, and the phones on the middle and right columns are iOS5 or iOS6.

Current status.

Contact methods

  • Leave a github issue. New issue.
  • Email: Address is in LICENSE or git log.
  • IRC: Visit irc:// for instant message. (You need an IRC client)

How to run test app

Download source code

# Copy and paste this lines
git clone git://
cd UI7Kit
pod install
open UI7Kit.xcworkspace # You should open xcwordspace

If you don't have cocoapods, visit or follow steps below:

# At first, install Commoand Line Tools from XCode->Preferences->Downloads.
sudo gem install cocoapods # May takes long time
pod setup # Do not sudo here

Run test app now.

How to update

Update source code and cocoapods

git pull # if you edited code, 'git fetch origin && git rebase origin/master'
pod update
open UI7Kit.xcworkspace # You should open xcwordspace

If you have any problems with missing methods, pod update usually solves the problem.

How to install to my project

If you don't have cocoapods, visit or follow steps below:

# Install Commoand Line Tools in XCode->Preferences->Downloads first.
sudo gem install cocoapods
pod setup # Do not sudo here

If you have Podfile, add 'UI7Kit'. Or follow steps below:

# Copy and paste this lines
echo "platform :ios, '5.0'" > Podfile
echo "pod 'UI7Kit'" >> Podfile
pod install
open *.xcworkspace

This command will generate or edit YourProject.xcworkspace. Open this instead of your original YourProject.xcodeproj.

Apps using UI7Kit


I am not maintaining authors list manually, but I am carefully keeping git author to track this. See:

How to install one or two components

Follow the above for installing CocoaPods, but instead make your app Podfile look like this:

pod 'UI7Kit/UI7Slider'

Individual components reference

pod 'UI7Kit/UI7ActionSheet'
pod 'UI7Kit/UI7AlertView'
pod 'UI7Kit/UI7BarButtonItem'
pod 'UI7Kit/UI7Button'
pod 'UI7Kit/UI7Color'
pod 'UI7Kit/UI7Font'
pod 'UI7Kit/UI7NavigationBar'
pod 'UI7Kit/UI7NavigationController'
pod 'UI7Kit/UI7PickerView'
pod 'UI7Kit/UI7ProgressView'
pod 'UI7Kit/UI7SegmentedControl'
pod 'UI7Kit/UI7Slider'
pod 'UI7Kit/UI7Stepper'
pod 'UI7Kit/UI7TabBar'
pod 'UI7Kit/UI7TabBarController'
pod 'UI7Kit/UI7TabBarItem'
pod 'UI7Kit/UI7TableView'
pod 'UI7Kit/UI7TableViewCell'
pod 'UI7Kit/UI7TextField'
pod 'UI7Kit/UI7Toolbar'
pod 'UI7Kit/UI7View'
pod 'UI7Kit/UI7ViewController'

Special case for Switches (pick one)

pod 'UI7Kit/UI7Switch/SevenSwitch'  # use SevenSwitch (default)
pod 'UI7Kit/UI7Switch/KLSwitch'     # use KLSwitch
pod 'UI7Kit/UI7Switch/MBSwitch'     # use MBSwitch

Do you like this project?

If this project was enjoyable for you to use, or if it was helpful, a tip would be greatly appreciated. Thank you ;)

Gittip donate button Paypal donate button


  • @lqez: who supported UI7Kit from very early stage.

  • @thomassnielsen: thanks to spread words.

  • @disjukr: thanks for support, and good luck for d2fest.

  • @christianmarth

  • @Serheo

  • @JohnKFisher: thanks for bug report. and good luck for Parlance.

  • andyaude

  • @segiddins: thanks for support, and especially for the reports and patches. UI7Kit becomes really better with you.

  • @zulkis

  • @lukaszmargielewski

  • D2 FEST awarded 3rd prize!

You can’t perform that action at this time.