Joe Hewitt's Three20 Project
Less than a week after he released Facebook Connect for iPhone, Joe Hewitt has posted the code for Three20, an expansive, open-source collection of UI components and HTTP/web inspired architectural elements.
The project has an interesting lineage: most of the functionality was part of Facebook for iPhone 2.2, but the library doesn’t directly re-use the code. Instead, Joe has essentially rewritten the functionality for the library, which will itself be used to develop Facebook for iPhone 3.0.
Three20 contains an ambitious collection of goodies to use in your own apps, including:
Photo Viewer – Emulates Apple’s photo app UI, but with flexible photo sources, including images from the network.
Message Composer – Emulates message composition in Apple’s mail app. Includes configurable message fields and auto-completion.
Web Image Views – Easy use of images fetched from URLs.
Internet-Aware Table View Controllers – Use table data from the Internet.
Two Enhanced Text Fields – A “growable” text field whose height expands as you type, and a “type-ahead” text field.
HTTP Disk Cache – Replacement for NSURLRequest that supports on-disk (not just in-RAM) caching.
URL-Based Navigation – Organize an app by “pages” with controllers registering URLs they handle.