Define slide over screen width in runtime - ios

For my app's purposes I need to know all possible screen sizes when getting some content from internet. It's turned out to be hard to define screen widths for iPad Split View/Slide Over modes. F.e.: iPad Air 2 has 320px app's window width in slide over, but iPad Pro - 375px in the same mode. It's definitely not 33% of full width claimed by Apple. Thanks.

Related

Removing launch screen file from Info.plist scales the views

I noticed something that when you remove the launch screen file entry from the XCode Info.plist file, any view of any view controller becomes scaled according to the screen size, so the views appear zoomed in on large screen sizes such as the iPad Pro (12.9 inches) and appear somehow zoomed out on smaller devices (iPad Pro 9.7 inches).
In that case it seems that the Auto Layout constraints have no effect as the scaling is done automatically.
I really can't understand what does this has to do with the layout constraints, so I appreciate if any one can explain what's the reason for that.
Without being able to provide deep details, iOS uses the launch screen definition (view or static images) to determine which size classes the app should use. If you have not supplied those, it seems you get scaling that you generally do not want.
That doesn't mean auto-layout no longer has any affect... it just means that the auto-layout engine is not using the current screen size for its size/positioning calculations.
You'll see very similar results if you explicitly set your project for iPhone only.
Simple, obvious solution: Don't remove the launch screen.
Yes this is expected behaviour... Same is for iPhone 6 Plus. If you remove the iPhone 6 Plus launch screen, it will display the iPhone 6 scaled version.
This is just for backward compatibility. If your app is not ready for iPad Pro or iPhone 6+, scaled version can be used by removing the respective splashing screens.
All current iPhone apps or iPad apps in AppStore those are not optimised runs as a scaled version.

Different layout for the same size class and almost the same view's width across devices

Situation on below image shows the problem. There are two devices: iPod and iPad Pro. On iPad Pro there is split view with my app on the right site. My app uses UISplitViewController for appropriate screen width.
Why it makes difference as you can see in the image below?
Is there a way to change constraints somehow depending on size classes or sth else excluding screen width?

Is using constraint/auto-layout on iPad a mandatory?

All iPad screens, iPad 1, iPad 2 ... , iPad Retina and Mini iPad have the same screen ratio. width/height or height/width or width:height
So, Why do we need to use constraints for the iPad views?!
I also believe that in interface builder when you select the view controller, you can view it as iPad or iPhone. there is many iPhone options but only one iPad option. you can do that by clicking the size drop down list in the Attributes Inspector.
Is there any of the iPad screens that have more or less screen points comparing to others? "Screen Points" not "Screen Pixels" if yes, Which one is that?
You don't have to use auto layout, but it's a good idea to. Once you understand it it's faster to work with, more flexible and very powerful for animations. You should also consider device rotation and usage for things like multi-tasking (ios9, use size classes too).
If you Design your Screens in Width Any / height any than your design will run on any iphone and Ipad Screen with autolayout. And it's a good practice too. if you want any change for iphone / ipad screen than you can remove that constraint for particular devices.add particluar constraint for particular devices.

iOS Replace the default Keyboard with a shorter Keyboard

How can I get the default keyboard to be shorter like the keyboard on the right?
The standard keyboard is the left, how do I get it to have the height of the one on the right?
The left keyboard is not taller than the right keyboard— they are the same height, in points. The difference is in the scale of the screen; i.e. the pixels are smaller on the right. Assuming that these are the same device, the difference is caused by one of two things:
The app on the left is not updated to support the higher resolution screens of the iPhone 6 and 6+. To remedy this, you can either specify a .xib as your "Launch Screen File" in the target's General settings, or add a launch image for iPhone 6 and 6+ to your asset catalog.
The app on the left is running on a device which is in "Zoomed" view mode. To change this, follow this path in your Settings app: General > Display & Brightness > View.
Edit: A good tip for recognizing such resolution differences (on an iPhone 6 or 6+) is to watch the clock as an app launches. If it gets bigger, then your device is set to the "Standard" view mode, and the application has not been updated to support iPhone 6/6+ resolutions. If the clock stays the same size, then either the app has been updated to support iPhone 6, or the device is in the "Zoomed" view mode (or both).
You cannot control the height of the keyboard. The keyboard on the left is looks taller because this app hasn't been updated for iPhone 6/6+ screens, so the keyboard and everything else in the app has been stretched.
See this question for how to support the new 6 screen sizes.

What is the minimum resolution to view iPad simulator (portrait) without scrollbars on 100% zoom

I bought a new 23" monitor with max. resolution of 1920x1080, but I still can't see fullscreen of the apps I develop in portrait mode.
I was wondering what is the minimum resolution required to view the iPad simulator in portrait without scrollbars. Any suggestion on video-recording the functionality of the app I develop for demo. Is there any app that can capture complete screen of the active window.
I'm aware of copy screen to capture complete screenshot in simulator, but I'm looking for recording a video demo.
If you have an iPad2, they can output video to a monitor. You can capture it there.
The iPad screen itself is 1024 pixels high in portrait mode. With the simulated iPad bezel, it's 1100 pixels high. So if you want to fit the whole thing on your screen with a bit of room for the menu bar and stuff, you're probably looking at 1280-ish vertical.

Resources