Get Updates By E-mail 

Article Written By:
Johann Dowa

Create Glossy iPhone Buttons Easy Using Interface Builder Or Code Without Images Or Private APIs


Last week I posted about a button making tool that utilizes the hidden UIGlassButton class in order to make the sexy colored glass buttons that are common in Apple created applications.

Having to create these buttons was something I was doing at the time, and it surprised me that many others seemed to be doing the same thing.

I was asked by a couple of people if that class was really safe to use, and it was because all you were doing was saving the buttons, and then using them in your own apps — it is perfectly alright since you would just be using png files, but Hwee-Boon has submitted an even easier solution.

The solution is a set of classes that utilize core animation to create the buttons so that no private APIs are used.

What makes this solution easier is that you can just use interface builder and then add in one line of code to set up how you would like the button to look.  No need to export png’s, and load them in.  You can also set them up using code.

The solution along with sample code can be found on Github here:

If you’re using interface builder for the buttons it is a pretty simple process:

1. In the interface builder declare the buttons as IBOutlet UIMOButton as opposed to IBOutlet UIButton.
2. Create your buttons with the UIRoundedRect type, and link them to the UIMOButtons you declared making sure the class identity is set to MOGlassButton.
3. When the xib is loaded execute the appropriate method for color and size ie. setupAsGreenButton setupAsSmallGreenButton.

Overall the code is very easy to follow, and looking at the demo project you can easily see exactly how things are done.

You can see in the screenshot below how things can easily be laid out in interface builder and the results including some buttons layed out using code:

Be sure to check out Hwee-Boon’s Posterous for further details (or to just say thanks):
Glass Buttons in iPhone Apps Without Using Image Files

If you like this then please share it with others.  Thanks!


Submit A Resource

Have you created a useful tutorial, library or tool for iOS development that you would like to get in front of our 300,000+ monthly page views from iOS developers?

You can submit the url here.

The resources we feel will appeal to our readers the most will be posted on the front page.