Working with the iPad mini-screen

The new iPad Mini has a screen size of 7.9 inches. Does the retina display? Will it automatically scale existing xibs and storyboards, or should we create two versions of each?

Do we deal with this, as with the iPhone 5?

How do I create a definition or condition to see if the iPad Mini is working?

+60
ios ipad mini
Oct 23 '12 at 18:21
source share
9 answers

If your application works on iPad 1 or iPad 2, it will work like on the new iPad mini. There is no retina on the mini display. In terms of application, it is identical to the iPad 2.

Edit: They asked how to determine when the application was running on the iPad mini. There is no API check for this. Screen size does not help. UI_USER_INTERFACE_IDIOM() does not help. As long as someone doesn't have one, there is no way to find out if the UIScreenMode pixelAspectRatio any different (probably this is the same as the iPad 2).

This leaves only one possibility - get machine from uname() and hardcode check for this value. This is never a desirable approach. And from now on, we donโ€™t know what the value will be. Perhaps iPad5, x , suggesting that the 4th generation iPad is iPad4, x .

Edit: So far, I have seen a report that iPad mini returns iPad2.5 (yes, it's two commas five), as well as iPad2.6 and iPad2.7 for the machine name.

+56
Oct 23 '12 at 18:23
source share

Applications will work fine. But if you have very small user interface elements. You may want to review them due to reduced screen size.

+60
Oct 23
source share

Create applications for iPad 2. The new iPad Mini does not have a retina with a resolution of 1024x768, which means that applications that have already worked on the iPad 1 or iPad 2, automatically work on the iPad Mini.

+7
Oct 23 '12 at 18:22
source share

I think Phil Schiller (Apple's senior vice president) said the best thing at the press event is the unveiling of the iPad Mini (around 53:00 in the main recording)

What screen size do we choose and why? And the team worked very hard thinking about it. We need an iPad that can run all this amazing software written for the iPad without developers doing any work ...

Then he continues:

... And the pixels are even easier to remember, because they exactly match the same thing. The original iPad and iPad 2 are 1024 by 768, and the new iPad Mini is 1024 by 768. This means that all the software created for the iPad runs on the iPad Mini unchanged.

So, briefly and to answer your question, the iPad Mini does not have a Retina display, and you do not need to do any extra work. The iPad Mini will use the storyboard or xib that you already created for iPads.

In case of discovery, I canโ€™t find anything to prove it (because they have not been released yet), but I bet that the following will display the โ€œiPad Miniโ€.

 NSLog(@"%@",[[UIDevice currentDevice] model]); 

EDIT:

 NSLog(@"\nMachine ID: %@\nModel: %@\nLocalized Model: %@",machineName(),[[UIDevice currentDevice] model],[[UIDevice currentDevice] localizedModel]); NSString *machineName() { struct utsname systemInfo; uname(&systemInfo); return [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; } 

On my 16GB iPad Mini (Wifi only) this returns:

Machine ID: iPad2.5
Model: iPad
Localized Model: iPad

+7
Oct. 25
source share

If the iPad Mini and iPad without a retina have the same screen size, could you use something like the one used to determine if the screen of the iPhone 5 or iPhone 4 is:

 #define IS_WIDESCREEN5 ( [ [ UIScreen mainScreen ] bounds ].size.height == 568 ) #define IS_WIDESCREEN4 ( [ [ UIScreen mainScreen ] bounds ].size.height == 480 ) 

So, for the iPad Mini and non-retina iPad, do:

 #define IS_PAD ( [ [ UIScreen mainScreen ] bounds ].size.height == 512 ) 

and for the retina iPad do:

 #define IS_RETINA_PAD ( [ [ UIScreen mainScreen ] bounds ].size.height == 1024 ) 

This should distinguish between two types of screens and bypass the need to accurately determine the exact model for large-scale purposes. An alternative method would be to use auto-layout, however I have a better sense of control without it.

Hope this helps in the second part of your question. Good luck :)

+7
May 11 '13 at 4:59
source share

You do not have to do anything. It should automatically work as mentioned by the apple. The resolution is still the same as the iPad.

+4
Oct 23 '12 at 19:04
source share

iPad mini uses the same resolution as iPads without a retina, iOS will use 1x graphics. See this link ... link

+4
Feb 01 '13 at 10:12
source share

Images for ipad mini will be the same for ipad 1 and 2. But it is recommended to use @ 2x images for the retina screen. Because, as soon as your application is in the application store, you cannot prevent users from downloading it to the ipad with retina display.

So, at this point you will need to make images for both the retina and the retina.

Programmatically, separate xib files are NOT required to display the ipad retina. Just save imageName@2x.png for all image objects.

+3
Feb 22
source share

To detect iPad Mini (any model), I use this code (tested on iOS 10.x):

 - (BOOL)isIPadMini { return [[UIDevice currentDevice].name hasPrefix:@"iPad Mini"]; } 
0
Feb 21 '17 at 10:12
source share



All Articles