In iOS, does having more pixels give you more viewable space?

XacTactX

Supreme [H]ardness
Joined
Dec 13, 2010
Messages
4,134
So, imagine:

iPhone 3GS: 480 x 320 = 153,600 pixels.
iPhone 4S: 960 x 640 = 614,400 pixels.

So does that mean the newer iPhone models can display four times as much viewable area?

I'm pretty sure that with Android the answer is YES but I'm not so sure about iOS.

Thanks guys! :D
 
in safari.. yes

in springboard.. no
Not even in Safari.

Every iPhone has a workspace of 480x320 points, and every iPad a workspace of 1024x768 points. On the current retina devices the scaling factor is two, which means that two pixels are equal to one point, so everything maintains the same physical size.
 
So the only benefit that a Retina display gives is that you have four times as much fineness, huh. I guess that's the answer.

Thanks guys! :D
 
You would still have the problem of fitting so much information into such a small space. It would be hard to read and getting the touchpad to register the correct spot would be hard. You usually end up zooming in or smartfitting everything anyways on most smartphones regardless of brand because of the physical limitations of eyes and fingers.

But pictures and videos look good on the iPhone, so maybe it helps in that regard.
 
Not even in Safari.

Every iPhone has a workspace of 480x320 points, and every iPad a workspace of 1024x768 points. On the current retina devices the scaling factor is two, which means that two pixels are equal to one point, so everything maintains the same physical size.

What do you mean a workspace of 480x320? I know for a fact that you can individually manipulate each individual pixel in the 960x640 space on the iPhone with the SDK.
 
Generally speaking, the points system is what gets used if you don't specifically try to make use of those extra pixels. Air Display is a good example of an app that gives you the choice of either having a high DPI screen with equally large UI components, or using the 1:1 pixels and effectively having a secondary monitor that is truly 2048x1536 and requires amazing vision.
 
What do you mean a workspace of 480x320? I know for a fact that you can individually manipulate each individual pixel in the 960x640 space on the iPhone with the SDK.
With an OpenGL ES app yeah, but when you're coding a normal iOS app you get 480x320 points of space to work with and you've got no control over that.
 
Even without directly using OpenGL you can render content to the screen and be able to interact it at the individual pixel level at the full retina resolution. Plenty of apps do this.

How else do you explain being able to move the mouse cursor over 1 pixel in Teamviewer and having the interaction change.

I could render 4 buttons each 1 pixel in size all next to each other and be able to click them all individually so long as I write it for a retina device. The digitizer gives retina-level precision when writing a retina-enabled application.

I don't see whats stopping a developer from shrinking down all the controls to fit more of them on the screen with the increased resolution as well as using smaller fonts and smaller assets.
 
Not even in Safari.

Every iPhone has a workspace of 480x320 points, and every iPad a workspace of 1024x768 points. On the current retina devices the scaling factor is two, which means that two pixels are equal to one point, so everything maintains the same physical size.

Are you trying to convince me that safari is rendering at 480x320.



Really?
 
For shits and giggles I took a few screenshots of this thread on ipad retina

http://i169.photobucket.com/albums/u211/0ceanic/818ff359.jpg
http://i169.photobucket.com/albums/u211/0ceanic/1b415111.jpg

The screenshot sizes are interesting, cant tell where they changed sizes though

you really see the benefit of the Retina Display when text is very very tiny. It can be very small but is sharp and defined and on a non-retina iPad, it's very hard to read without zooming in.

You really notice it when browsing threads that have a large image and Safari scales the page to the image size and all the text gets really small.
this screenshot has really small text but is very sharp on the screen and easy to read,
www.transamws6.com/pics/pc/2010/retina.png (image is 1.56MB)

In portrait mode, the text is super tiny, but is still sharp and defined, which is amazing,
www.transamws6.com/pics/pc/2010/retina2.png (image is 2.4MB)
 
Last edited:
Even without directly using OpenGL you can render content to the screen and be able to interact it at the individual pixel level at the full retina resolution. Plenty of apps do this.

How else do you explain being able to move the mouse cursor over 1 pixel in Teamviewer and having the interaction change.
You'd have to elaborate on what you mean about TeamViewer.
I could render 4 buttons each 1 pixel in size all next to each other and be able to click them all individually so long as I write it for a retina device. The digitizer gives retina-level precision when writing a retina-enabled application.
There's no such thing as a "retina-enabled" app. There's just an iPhone app, which is 480x320 points, and that iPhone app runs perfectly on a standard iPhone and a retina iPhone. All you've got to do is provide higher resolution assets for iOS to use. (OpenGL ES apps aside.)

If you create a UIButton which is 1x1 pixels then it's still 2x2 pixels on a retina device. You can't change that.
Are you trying to convince me that safari is rendering at 480x320.

Really?
Safari is like any other iOS app: it's 480x320 points. Since the webpage is scaled to fit the WebView containing it you still see the same amount of the page, it's just rendered with more pixels so it looks sharper. If you turn off the scaling on the WebView then you see only 480x320 pixels of the webpage at any one time, it's just very sharp.
 
What I meant by teamviewer or other similar programs is that it renders a cursor on the screen used to interact with the computer you are connected to in teamviewer.

You can move that cursor in any direction by a single pixel on a retina device and that can create a different result when making the cursor click whatever pixel it is hovering over in the remote computer.

You can click all 614400 individual pixels. Maybe they are using OpenGL to draw and interact with the content though.


But I guess to address the OPs original question. This answer should still be yes. There is nothing stopping you from rendering a UI that looks just like the iPhone UI controls but instead using OpenGL so you can make the controls any size and fit 4 times the content on the screen.

Doing this would probably cause near incompatibility with an older 480x320 device, but that wasn't the question.
 
What I meant by teamviewer or other similar programs is that it renders a cursor on the screen used to interact with the computer you are connected to in teamviewer.

You can move that cursor in any direction by a single pixel on a retina device and that can create a different result when making the cursor click whatever pixel it is hovering over in the remote computer.

You can click all 614400 individual pixels. Maybe they are using OpenGL to draw and interact with the content though.


But I guess to address the OPs original question. This answer should still be yes. There is nothing stopping you from rendering a UI that looks just like the iPhone UI controls but instead using OpenGL so you can make the controls any size and fit 4 times the content on the screen.

Doing this would probably cause near incompatibility with an older 480x320 device, but that wasn't the question.
I believe those types of apps are sending a video stream, and the cursor is just an image on the screen which is moved around when you drag your finger. I don't think it's OpenGL ES but I'm not sure you get pixel-precision on those sorts of things.
 
If you create a UIButton which is 1x1 pixels then it's still 2x2 pixels on a retina device. You can't change that.
You don't create buttons in pixel sizes, you create them in points, which may be larger or smaller than a pixel. And of course, the buttons in your app can be any size you choose them to be, so I'm not sure what "you can't change that" is supposed to mean.

it's just rendered with more pixels
you see only 480x320 pixels
You just contradicted yourself.
 
So, imagine:

iPhone 3GS: 480 x 320 = 153,600 pixels.
iPhone 4S: 960 x 640 = 614,400 pixels.

So does that mean the newer iPhone models can display four times as much viewable area?

I'm pretty sure that with Android the answer is YES but I'm not so sure about iOS.

Thanks guys! :D

You don't have four times the viewable area because the screen is still 3.5 inches, but you can display four times the data.
 
Not even in Safari.

Every iPhone has a workspace of 480x320 points, and every iPad a workspace of 1024x768 points. On the current retina devices the scaling factor is two, which means that two pixels are equal to one point, so everything maintains the same physical size.

What happens when one displays a graphic at full iPad 3 resolution or at full resolution on a 4/4S?
 
So, imagine:

iPhone 3GS: 480 x 320 = 153,600 pixels.
iPhone 4S: 960 x 640 = 614,400 pixels.

So does that mean the newer iPhone models can display four times as much viewable area?

I'm pretty sure that with Android the answer is YES but I'm not so sure about iOS.

Thanks guys! :D

yes and no. It scales the UI elements so it will appear to be the same size from the 3GS to the 4, for example, but the 4 had a much higher pixel density thus displaying more information on the screen.

So in a sense, yes... it does allow for more viewable space (or maybe usable is a better word). browsing the internet for example, you can clearly read text and view images without the need to zoom like you would on the older devices. But not because it's shrinking the UI elements with the increased resolution but because it's displaying 4x the number of pixels in the same 3.5" area

scaled.php
 
Just took screens with my iPad (Retina) and my work iPad (first-gen).

Retina:

Non-Retina:

As you can see, same viewing space, just a much higher quality image.
 
http://www.anandtech.com/show/6023/the-nextgen-macbook-pro-with-retina-display-review/6

This page in Anand's MBP review kind of explains it. The IOS and OSX can scale points on a per element basis so that things can be set for best legibility. Can a 4S iPhone display 4x as much as a 3gs? Yes, but in practice it does not because that can potentially make things hard to read and control. It's not a trick or a lie, it's just a conscious choice to go for visual quality over creating more space.
 
Ok, so it's the same resolution only with more pixels, we are definitely following you.
Uhh that's not what I said.
You don't create buttons in pixel sizes, you create them in points, which may be larger or smaller than a pixel. And of course, the buttons in your app can be any size you choose them to be, so I'm not sure what "you can't change that" is supposed to mean.
Yes, I know that. Though the smallest possible unit is one point, which is either one pixel or two pixels, so it can't ever be smaller than a pixel here. I wasn't saying you can't change the size of a button, I was saying you can't change the fact that a 1x1 pixel button on a standard iPhone is going to be 2x2 pixels on a retina iPhone.
You just contradicted yourself.
I did not. The first quote I'm talking about when scaling is on, the second I was talking about when scaling is off, saying that you only see 480x320 pixels of the webpage -- I wasn't talking about iPhone UI.
What happens when one displays a graphic at full iPad 3 resolution or at full resolution on a 4/4S?
There's no scaling involved with that, it's just displayed normally.
 
Yes, I know that. Though the smallest possible unit is one point
Points are specified as CGFloat, so you're wrong again.
I was saying you can't change the fact that a 1x1 pixel button on a standard iPhone is going to be 2x2 pixels on a retina iPhone.
You can change that, if you're a programmer.
The first quote I'm talking about when scaling is on, the second I was talking about when scaling is off
The iPhone does not use any scaling mode that can be turned on and off.
 
Points are specified as CGFloat, so you're wrong again.
Yes a point is defined like that technically, but in iOS you're not able to create any control with an x or y origin, or width or height which isn't an integer. The smallest possible control you can create is 1x1 points. Which is 1x1 pixels on a standard display or 2x2 pixels on a retina display.
You can change that, if you're a programmer.
You can't. Apple gives you no control over that.
The iPhone does not use any scaling mode that can be turned on and off.
I wasn't talking about the iPhone, I was talking about UIWebView and its "scalesPageToFit" property.
 
in iOS you're not able to create any control with an x or y origin, or width or height which isn't an integer.
Which is a convenience designed to streamline the transition to retina displays.
You can't. Apple gives you no control over that.
A programmer has complete control over every pixel on the screen. If you want a button that is half a pixel wide, then don't use the standard controls. Chances are, you don't want a button that is half a pixel wide and neither does your user.
I wasn't talking about the iPhone, I was talking about UIWebView and its "scalesPageToFit" property.
That shrinks pages to fit the screen. Not a property unique to retina displays, iOS, or mobile platforms.
 
Which is a convenience designed to streamline the transition to retina displays.
How so? You can't have non-integer points in iOS anyway -- I mean what would be the point of them? Having a 31.5 pixel button? That's going to show artefacts and have other issues, so I don't see why it would be to streamline the transition to retina displays.
A programmer has complete control over every pixel on the screen. If you want a button that is half a pixel wide, then don't use the standard controls. Chances are, you don't want a button that is half a pixel wide and neither does your user.
No, iOS has control over every pixel on the screen. You've got an IDE given to you by Apple which allows you to create a workspace of 480x320 points. You can't make anything a decimal size, it has to be an integer. Either in code, or in the IDE.
That shrinks pages to fit the screen. Not a property unique to retina displays, iOS, or mobile platforms.
That wasn't my point.

>>>>

The only place you've got control over every pixel is in an OpenGL ES app.
 
Y'all are fancy. ^^^ That went right over my head. :)

But I have a simple question, so does that mean that if you are in Safari that you are getting 480 x 320 viewable area with tremendously higher sharpness? Or do you really get more viewable pixels?
 
Y'all are fancy. ^^^ That went right over my head. :)

But I have a simple question, so does that mean that if you are in Safari that you are getting 480 x 320 viewable area with tremendously higher sharpness? Or do you really get more viewable pixels?
That depends on the browser. Almost all, if not all, scale the page to fit the width of the display, which means you're basically getting the same viewable area as on a 480x320 display except it's going to be rendered over more pixels, so it's sharper and more readable. (In other words, the page is squished to fit all of it on the display, but with the 960x640 display it's spread over more pixels which makes it sharper and more readable from the same zoom level.)
 
Y'all are fancy. ^^^ That went right over my head. :)

But I have a simple question, so does that mean that if you are in Safari that you are getting 480 x 320 viewable area with tremendously higher sharpness? Or do you really get more viewable pixels?

You get more viewable pixels.
 
In iOS it is whatever apple decides as their OS wasn't designed with multiple resolutions in mind. So they had to start pixel doubling with the iphone 4 and needed entirely seperate app layout on the ipad.

Android the number of pixels isn't the only thing that determines real estate. There is also lcd density that determines it. Androids system works very well and allows apps to easily be tailored to different size screens and resolution perfectly.
 
Back
Top