1. SlideShare for the iPad
Tarik Bilgin
Robin Kansara
SJSU CMPE 277
Prof. Dan Harkey
Thursday, May 20, 2010
2. www.slideshare.net
• Community website
• The ‘YouTube’ of slideshow presentations
• users upload and share
• users search, browse, and view
Thursday, May 20, 2010
3. Project Vision
• To create an iPad application
• Using slideshare.net as a data source
• As iPhone devs wanted to experience iPad
development
• Explore iPad UI Design paradigms
Thursday, May 20, 2010
4. SlideShare API
• REST API
• XML over HTTP
• number of methods supported
• search method implemented
Thursday, May 20, 2010
8. XML Parsing
• Tree parse vs Event Parse
• Event parse, because memory efficiency/speed
• NSXMLParser - delegate methods
• parser:didStartElement:namespaceURI:qualified
Name:attributes:
• parser:foundCharacters:
• parser:didEndElement:namespaceURI:qualifiedN
ame:
Thursday, May 20, 2010
9. UI Design Basics
• We want to use the large screen
• UITabBarController for user stories
• UINavigationController for navigation
within each use case
Thursday, May 20, 2010
10. UI Design Process
• UITableViewController
• Rejected - designed for small screen
• UISplitViewController
• Rejected - not suitable for this scenario
• YouTube app UI style
• Approved - but not documented!
Thursday, May 20, 2010
12. AQGridView
• to our rescue from iPadDevCamp San Jose
• Jim Dovey, open sourced
• limited documentation
• Subclasses UIScrollView
Thursday, May 20, 2010
13. Grid View
Implementation
Thursday, May 20, 2010
14. An Observation
• Asynchronous vs. Synchronous network communication
• Apple recommends Asynchronous for a better user experience
• Many developers avoid it at first
• more complicated to implement
• much simpler than traditional threading
• callbacks to delegate methods
• connectionDidFinishLoading
• connectionDidReceiveResponse
Thursday, May 20, 2010