Fraser Speirs Cocoa and Photos

Posted
17 November 2008 @ 11am

Tagged
Programming, Tech, iPhone

Add:     

Free Idea: FullScreenKit

Here’s an idea I want someone to do for me and the rest of the internet: FullScreenKit. What is FullScreenKit? Well, it’s a syncretic mixture of UIKit, Core Animation and Front Row.

Here’s the motivation: I recently wanted to write a Front Row-like application but found the process of bootstrapping too onerous, so I didn’t do it. As far as I know, Core Animation doesn’t provide you with much in the way of standard full screen controls or menu structures - you have to do a lot yourself.

So, I propose a project - for some motivated person with more free time than I - to produce a UI framework based on Core Animation that visually mimics Front Row, but uses the conceptual design of UIKit from iPhone OS.

If you think about it, UIKit is an immersive full-screen user interface. It’s just designed for a very small screen. Front Row-style interfaces have many of the same challenges, just in a bigger size.

The kit would need:

  • An equivalent of UIView and UIViewController.
  • An equivalent of UITableView to create the menu structure in Front Row.
  • An equivalent of UINavigationController to drill into the navigation hierarchy.
  • Easy support for showing an image or playing video content.
  • A collection view like NSCollectionView or IKImageBrowserView would also be very useful for showing a large amount of content compactly.

So if you’re more Hardcore Animation than Core Animation and looking to do the next Sparkle, be my guest. I’ll make some fun things with it.


7 Comments

Posted by
Keith Duncan
17 November 2008 @ 11am

Sounds like a good project, and I’d find it pretty useful too. Though it’s less programatic (and less interactive) I’ve used Quartz Composer for a couple of fullscreen interfaces.


Posted by
Justin Miller
17 November 2008 @ 12pm

Same here — have used Quartz Composer as well. It would also be really interesting to have a number of kiosk-like features such as keyboard lock-in, Exposé resistance, and screen saver-level window to avoid popups. I’ve done a fair amount of programming with all of those on an unreleased product and to have them reliable and abstracted would be awesome.


Posted by
Jonathan Dann
17 November 2008 @ 12pm

Sounds like fun. The View Controller stuff I did might fit the part of the bill after a little tweaking, its now incorporated into KTUIKit. http://katidev.com


Posted by
CraigM
17 November 2008 @ 12pm

Hmm … Exposure/Flickr/Cooliris mashup??


Posted by
Nathan
18 November 2008 @ 3am

I was just thinking yesterday that development for a Wii or Apple TV like device is the next area I want to investigate. I agree that it would need a set of quality frameworks like the iPhone to be a real winner.


Posted by
Scott Guelich
19 November 2008 @ 3am

Great idea. One good place to start is by looking at some of Bill Dudney’s sample code, which he expands on in his CA book:

http://bill.dudney.net/roller/objc/entry/20080111


Posted by
Keith Duncan
25 November 2008 @ 7pm

Just had another thought, it’d need the Apple Remote API to be opened to be hyperusable. Sure it could just use it anyway, though understandably it might break.

I use it in my unreleased product but I won’t be advertising that feature. Everyone’s filed that bug right? I’d ask everyone to file it, and mark it as a duplicate of rdar://problems/4632245&5669148 if you haven’t already.