Three20
Joe Hewitt has posted the code for Three20, an open-source collection of UI components and HTTP/web inspired architectural elements for the iPhone.
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 rewritten the functionality to make a better generic set of controls.
Three20 contains a range of controls 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.










It took me half an hour to have nicely woking, fully cached image download in UIImageViews. The hardest part was introducing Three 20 to my project as a static library…
I took some time to read the code parts that interested me most. Although plugging to lower levels of code such as cache, or downloadQueue will not be as easy, the quality of code makes it ‘easily’ feasible. Headers are well documented.
Definitely worth a lokk : don’t reinvent the wheel.
Leave your response!