Explore the SlideShare API and UI Design for an iPad Application
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