Programming Game Controllers in iOS 7

Post by

The iOS platform has been somewhat handicapped when it comes to games due to the twin stick interaction paradigm prevalent on games consoles. Even having physical buttons that give tactile feedback about what control the player has used existed on the first Atari consoles which hard glass screens cannot recreate.

On screen twin stick controls have improved over the years, but still don’t offer the responsive feedback of dedicated hardware controls, and will always have the problem of obscuring part of the user interface and the action going on in the game.

All this has changed in iOS7, with Apple quietly announcing the Made For iOS (MFi) Game Controller specification at WWDC 2013 and the first three controllers having come to market 7 months later.

The controllers come in two configurations. The standard controller has four face buttons, a d-pad, two shoulder buttons and a pause button while the extended controller has the same with two additional analogue sticks and two additional shoulder buttons. They can be either wrap around controllers with a lightning connection to the device or some extended controllers only connect via Bluetooth, which can also be used on OSX 10.8.

Continue reading

Managing the Status Bar in iOS 7

One of the tenets of iOS 7’s new UI is full screen content.  To make full use of the screen, the OS now expects your app will extend underneath the Status Bar at the top of the screen.  Apple has created a new set of API’s to allow your apps to take advantage of this new feature.

First, gone are the old UIStatusBarStyleBlackOpaque and UIStatusBarStyleBlackTranslucent. These have been deprecated in favor of UIStatusBarStyleDefault and UIStatusBarStyleLightContent. If you have light background colors behind the Status Bar, use UIStatusBarStyleDefault and the system will use a black color for the time, carrier, and other elements in the Status Bar.

Continue reading