Screen dimensions for iPad Pro

Hi

I am currently working on a app project (using OF9.0) which requires fixed portrait layout for iPhones but allowing switching portrait and landscape layouts for iPad. While I have everything working as expected for all older models (and simulators) I am not managing to get it working for iPhone 6 and newer as well as for the iPad Pro.

In the case of the iPad Pro I am getting the (expected) screen size of 2732 x 2048 pixels, the actual display is missing about a a sixth on either side.

From Log:

2015-12-14 16:16:49.499 ParatPlus[2924:183660] device info: iPad
screen dimensions (w x h): 2732x2048

After rotating the screen the dimension reading differs:

2015-12-14 16:18:04.381 ParatPlus[2924:183660] Orientation changed to 2
Update to Portrait screen dimensions (w x h): 1536x2048
screen dimensions (w x h): 1536x2048
2015-12-14 16:18:09.127 ParatPlus[2924:183660] Orientation changed to 3
Update to Landscape screen dimensions (w x h): 2048x1536
screen dimensions (w x h): 2048x1536
2015-12-14 16:18:15.604 ParatPlus[2924:183660] Orientation changed to 1
Update to Portrait screen dimensions (w x h): 1536x2048
screen dimensions (w x h): 1536x2048
2015-12-14 16:18:20.307 ParatPlus[2924:183660] Orientation changed to 4
Update to Landscape screen dimensions (w x h): 2048x1536
screen dimensions (w x h): 2048x1536

with the effect that after rotations happen, the entire windoe is being displayed on the screen, however, with the apparent smaller resolution.

I am using ofSetOrientation()

currentOrientation = [[UIDevice currentDevice] orientation];
cout << deviceType << " currentOrientation " << currentOrientation << endl;
if(currentOrientation != 5)
{
ofSetOrientation((ofOrientation)currentOrientation);
}

For the iPhones newer than the iPhone 6, I experience the same issues. I have not been able to text with the actual devices, so I wouldn’t be able to test whether there’d be a difference from the simulator.

Thanks!

Any help and pointers would be appreciated.

Hey!

Good news this is something you can fix really easily for your project.

This is related to the project not utilising the new “Image.assets” and the new “LaunchScreen”

The openFrameworks Core is tracking this issue with a solution for the Template Project here:
https://github.com/openframeworks/openFrameworks/issues/4566

So for iPad Pro support… In Xcode … Add a new “LaunchScreen Storyboard”.
This will also give you fullscreen / full rez iPhone6 + (you will also need to migrate the icons to a Image.assets).

Thank you very much! That solved my iPhone 6 issues.

Now following the successful implementation of the LaunchScreen I continue to have serious issues when using the iPad Pro simulator

2015-12-15 22:21:42.902 ParatPlus[12281:762715] device info: iPad
screen dimensions (w x h): 2732x2048

2015-12-15 22:21:44.049 ParatPlus[12281:762715] Creating OpenGL ES1 Renderer
2015-12-15 22:21:44.056 ParatPlus[12281:762715] Orientation changed to 0
2015-12-15 22:21:44.057 ParatPlus[12281:762715] Orientation changed to 4

2015-12-15 22:21:51.471 ParatPlus[12281:762715] _BSMachError: (os/kern) invalid capability (20)

With the result of:

Does the _BSMachError: (os/kern) invalid capability (20) indicate there are more image files missing, which could cause this issue?

Cheers

Sorry, missed to show what it should look like: http://incalcando.com/apps/2015/11/24/latest-stage-of-development/

I managed to advance (a bit) locating a problem with the rotation on the iPad Pro. I have removed the initial rotation to landscape view on starting up the app, resulting in the screen to be drawn correctly, however with the wrong screen dimensions applied (the reason I enforce the landscape rotation which works reliably on all other devices tested and all simulators available in XCode 7)

When rotating the screen the first time I am getting the distortion.

after a further rotation the screen remains black.

Any ideas what could cause this behaviour as i am not experiencing it on any other device?

Thanks

HI,slexer.I met the same problem about the screen resoluton. But i don’t know how to add the LaunchScreen.xib and change it.

Is it in here i can change the setting? and what’s the next step?How to change over to Asset? i want to know more details about that, thank u :smile:

1 Like

Hi Wenzy90, after creating the LaunchScreen, change the ‘Launch Screen File’ entry to your LaunchScreen file in the section ‘App Icons and Launch Images’ of your app TARGETS (according to your screen shot you’d select DrawingTrainingTest project and then ensure you have the TARGET selected in the middle section of your xcode window, as well as select the General tap).
Hope that helps, as well as I still hope that this is really all one has to do … :wink: but it did solve some problems of screen dimensions.

Thanks,slexer. It works now :slight_smile: