NSOperation Xcode File Template
Aug 4, 2010 iphone
From Jeff LaMarche’s iPhone Development site:
iPhone Development: NSOperation Xcode File Template:
NSOperation Xcode File Template Although I’m generally averse to using a lot of template or boilerplate code, there are times when it’s handy to have file template beyond those that Apple provides. Something I’ve done a fair amount of lately is to create NSOperation subclasses, and there’s enough work involved with setting up an operation that I made an Xcode file template that contains all that setup work.This template includes a delegate and a protocol and some private methods for communicating with the delegate. Now, when I have lots of NSOperation subclasses in a single project, I’ll actually move much of this stuff to an abstract parent class or a category on NSOperation, but templates don’t have any way of setting up dependencies, so I’ve made this self-contained and you can do your own refactoring.
Free iPhone Design Templates for Keynote and PowerPoint
May 26, 2010 Apple, Interaction Design, User Experience, User Interface Design, iphone
Free iPhone Keynote and PowerPoint templates help get you from thought to finish:
Mockapp.com has created both Keynote and PowerPoint templates of iPhone UI elements, and has made them available as free downloads. Say you had a dream in the middle of the night about the most awesome iPhone app that, to your surprise, no one has thought of yet. Instead of waking up in a deep sweat and scribbling said ideas on paper, you could dream them up on Keynote.After mapping out your concept on Keynote, you could then pitch it to others in a Keynote presentation. The Keynote and PowerPoint templates include alerts, the iPhone keyboard, arrow icons, buttons, as well as a host of other UI elements.
Tags: Apple, interaction design, iphone, ixd, user experience, ux
Preparing Your Web Content for iPad (Apple Technical Note TN2262)
May 20, 2010 Apple, User Experience, User Interface Design, Web Design, Web Development, ipad, iphone, javascript
Apple ~Technical Note TN2262: Preparing Your Web Content for iPad:
Safari on iPad is capable of delivering a “desktop” web experience. iPad has a large, 9.7″ screen and fast network connectivity, and Safari on iPad uses the same WebKit layout engine as Safari on Mac OS X and Windows. You can ensure that your website looks and works great on iPad, and even create new touch-enabled web experiences for your customers, by considering a few specific differences between iPad and other platforms.If you have access to an iPad, test your website using the iPad. If not, you can test your website in Safari on iPad using the iPhone Simulator (Hardware -> Device -> iPad). iPad is available in the iPhone Simulator in iPhone OS 3.2 SDK beta 2 and later, which is available to iPhone Developer Program members. In cases where it is possible to simulate iPad-like behavior in Safari on a desktop computer, instructions are given below.
Methods of iPad Detection in Web Applications
May 20, 2010 Web Development, ajax, ipad, iphone, javascript
With all this Dashcode and iPhone web development exploration that I’ve been doing lately, the question of course came up in my mind… what about the iPad? I’m already using some rudimentary sniffing to make sure iPhone users go to the appropriate spot, but obviously this case would have to be dealt with too, since maybe I would not want to send iPad users to the same spot as the iPhone users.
So I was very glad to find this article: iPad web development tips by Nicholas C. Zakas at his site, NCZOnline.
As it turns out, my method would have failed in that case since I have only been checking for “iPhone” (NOTE: strings are split on multiple lines to fit on this page… they actually don’t have line breaks.):
User-agent string
The previously-linked post describes the iPad Safari user-agent to be in the following format:
Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10This was the user-agent string during the beta testing phase. The format is slightly different for the final release: Although this appears to be the official user-agent string, I have received reports of a user-agent like this:
Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10You’ll note the addition of “iPhone” in the operating system segment of the user-agent string. This brings the user-agent string for Safari on the iPad more into line with Safari on the iPhone and iPod Touch, which have the following user-agent strings, respectively:
Mozilla/5.0 (iPod; U; CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16 Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16This means a single user-agent string sniff for “iPhone” returns true in all three cases. The problem, of course, is that you might want to serve different experiences to the iPhone/iPod Touch than you would for the iPad. Make sure you double-check any user-agent sniffing designed to target these devices.
Then we move on to the interesting tidbit for the client-side. If detection is necessary, evidently we can use the navigator.platform property:
JavaScript iPad detection
If you’re trying to detect the iPad using JavaScript, there’s a very simple way to do so: check navigator.platform. The value of navigator.platform is always “iPad” when Safari for iPad is the user-agent. This follows the tradition of “iPhone” for the iPhone and “iPod” for the iPod Touch. This is the most accurate way to detect the iPad from JavaScript, assuming you don’t want to do a full user-agent string sniff.
function isIPad() { return navigator.platform == "iPad"; }Also, keep in mind that navigator.platform doesn’t change even when the user-agent string for a browser is changed.
Good information for both sides of the computing fence, so I’m glad to have it!
Tags: ajax, Apple, browser sniffing, ipad, iphone, ipodtouch, javascript, user agent, Web Development
iPhone Wireframe Templates for Sketching
Sep 17, 2009 Interaction Design, User Experience, User Interface Design, iphone
In the spirit of Open Source, I have posted some iPhone Paper Prototyping and Design templates, and you can Download The .Zip File Here.
There are two layouts, and both layouts are in PDF and Viso (VSD) formats.
Feel free to download and tweak them as needed.
Have fun with them!
UPDATE: With all the recent activity following the Smashing Magazine article on Wireframing, I’ve added the PDF files on their own, so if you’re viewing this page on an iPhone or other device that doesn’t like .zip files, then you can at least view them.
Enjoy!
Tags: interaction design, iphone, ipodtouch, ixd, paper prototyping, ux, wireframes

