Hacker News new | ask | show | jobs
by droithomme 5093 days ago
So now, with full screen interfaces only, we need to create artwork and a UI scaled and designed separately for:

1. iPhone/iPod 640×960 at 326ppi

2. iPad dimensions 1024x768 at 132PPI

3. Retina iPad 2048×1536 at 264PPI

4. iPad mini at 1024x768, but smaller pixels and yet expected same physical size controls, so interface has to be redone again specific for this one.

5. Whatever is after that.

That's a lot of design variations and things to support for one program that for most developers is going to sell for between 99 cents and $2.99.

8 comments

That's really just two sizes, 1024x768 and 320x480, which you create at 2x resolution. And these are separate apps most of the time.

There is no expectation that controls will be the same physical size on the rumored iPad mini; what happens is that scaled down they already have the same hit area as an iPhone, so you don't need separate graphics for it.

It all fits beautifully, and one has to wonder if this was all planned from the start or just luck + sensible decisions.

Gruber is arguing that there won't need to be a redesign for a smaller iPad because, if developers followed Apple's recommendations, touch target sizes on the smaller iPad will match the iPhone. Unless your app depends on the physical size of a point, no redesign is needed.

So, you still have two layouts: iPhone/iPod and iPad. You have four graphics resolutions: two for each.

Of course, as he said, we'll have to see how this plays out in reality. Maybe a smaller iPad will turn out to suck, and developers who want their apps to be usable on the thing will have to redesign them. It's hard to say without actually testing apps at that size.

Nope. iOS 6 adds auto layout to Interface Builder and Core Layout to the runtime. You'll either start at the largest resolution and setup constraints as the screen size shrinks or at the smallest resolution and do the opposite.
Isn't this how it's done in the Android world (and chastised by iOS developers)? Really, I'd like to know.
in android, one provides four different density-specific resources.

  ldpi:  low-density screens (~120dpi)
  mdpi:  medium-density (~160dpi) [baseline]
  hdpi:  high-density (~240dpi)
  xhdpi: extra high-density (~320dpi)
there is a nodpi qualifier which is intended for density-independent resources.

there are also screen size qualifiers, small, normal, large, extra large.

These screen size qualifiers have been deprecated beginning with Android 3.2 (HoneyComb). See best practices on Android developers site: http://developer.android.com/guide/practices/screens_support...
i never used the screen-size qualifiers myself, but good to know they've deprecated them in favor of what seems to be simpler.

AFAIK, the density qualifiers are still being used, and are mentioned in the "new" design guidelines document as well, giving me the impression they may stick around for a while. http://developer.android.com/design/style/devices-displays.h...

Unless you are making a ruler app, I don't see much reason to make iPad mini apps any different than iPad apps. I can't think of anything I would change in my apps.
Not when your outlining a iPad mini using the same resolution as the original iPad. In that case there is no more work than is already involved.

Nothing stopping you doing your graphics at a higher resolution and working in that then scalling down.

Also the harder it gets then the less competition, which for you a developer has to be good if people are put of by having to design/do work.

I don't get the last point. It's a level playing field. If it's more work for other developers, it's more work for you too.
Last point being that if the person who write application has to do more work and effort then it will put more people off and as such mean more work for those who can be assed to do that extra little bit of work.
You missed the non-retina 3GS which is still being sold.

Also, the rumor (according to Gruber again) is that the next iPhone will get longer, so newer iPhones will have more pixels in one dimension, so you'll need to make your portrait layout grow taller and your landscape layout grow wider.

No, there are only two interfaces you make-- the iPhone and the iPad versions. These are your two code paths and the two Interface Builder projects.

You want to make normal and 2X graphics of course, but for all of them this just means making 2X graphics and downsizing for a normal version as well.

The iPad mini will use a screen with the dimensions of the original iPad and the touch targets will be of sufficient size (people did the math on this months ago, it works out fine.... the touch targets are closer to the iPhone size but plenty big.)

What about earlier-gen 320x240 iPhones (3GS; still in production!) and iPod touches? Does anyone develop with these screen sizes in mind?

Reminds me of the "Android is fragmented" cliche.

The only thing you have to provide is low-resolution versions of your graphics, assuming you don't need the newer hardware for some reason. The layout's still exactly the same.

iOS has two screen sizes, with a third rumored. Apps on that second size are usually designed differently anyway, to take advantage of the larger screen on the iPad.

Such fragmentation! And this is over how many years?

Um what? 3GS is 480x320. There's retina (2x) or non retina, iPhone or iPad

Android fragmentation is a cliche because it's true.

And Android is fragmented not because of hardware but because of developer APIs/operating system versions.