I have realised that the keyboard which appears on my application doesn't have the same layout/appearance than others on the same device.
Keyboard that appears on my app:
Keyboard that appears on Safari:
Both screenshots has been taken on the same device with iOS 10.2. The second keyboard has like a modern style with more keys but using less space on the screen.
I think it could be related to some configuration on the project. I have tried the same textview but on a new empty project and I'm getting the new keyboard layout.
This is the current textview configuration (yes, it's an old project that uses xib files)
Do you know what I need to get the new keyboard style on my app?
As #Larme has said, the application was not optimized for iPhone 6/plus. Adding the following image size to the launch image was enough:
Default-667h#2x.png: 750 x 1334 (iPhone 6, Portrait)
Default-736h#3x.png: 1242 x 2208 (iPhone 6 Plus, Portrait)
Related
My app was acting fine till I updated my Xcode. For some odd reason, my UINavigationBar is no longer covering the entire width of the screen for devices iPhone6 and above.
For iPhone 5:
For iPhone 6 and above:
I think you didn't used autolayout. Okay no problem..
Follow below steps:
1. you need to keep it empty on Launch Screen file.
2. Create Launch image source and then add iPhone 6 and 6+ splash screens
Then it will work your navigation bar automatically fit based on device.
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.
I have xcode 6 and target is 7.0.I am having no problem with other simulators.But in iPhone5s7.1 the screen has black top bar and bottom bar
If you use #2x.png files by default, then I'm sure that your app will look good on iPhone5s and other retina devices.
as #WonderMonster answer you will have to make #2x size images
Read this https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html
This is because the iPhone 5s has a taller screen than the iPhone 4 and earlier. Most likely you are setting your view to a static size rather than setting it to dynamically resize.
I've started using Xcode auto layout for my projects.
Auto-layout works perfectly when I'm testing on ios8 devices, it the view scales as needed.
However, things get a little crazy with ios7.
When I test my app on an ios7 iPhone 5 simulator, the app doesn't scale-up to the larger screen,
but only shows the 3.5 inch view, leaving black bars on the top and bottom of the screen.
I am using a tableView controller.
How do I scale the tableViewController up so that it fits on a larger screen in ios7?
(Like I've said, my app fits perfectly in ios8, on all screen sizes, but not in ios7.
Also, it scales fine on an ios7 ipad.)
thanks.
The Xcode (6) IDE should give a warning about this, that may not be so clear:
"Applications using Launch Screen Files and targetting iOS 7.1 and earlier
need to also include a Launch Image in an Asset Catalog."
This means you need to have the proper Launch-Images for the "Retina 4" screen,
which is 640 × 1136 pixels, and it should be configured in the assets-catalog,
just like your Application-Icons ("AppIcon"), but under "LaunchImage" there.
Once you add this 4-inch-compatible Launch-Image to your application,
iOS-7 will assume you are properly supporting the "Retina 4" screen,
and will launch the application in 4-inch mode.
I noticed that on iOS 8, the native keyboard on iPhone 6/6 Plus added some keys in landscape mode.
However when I create an app with UITextView, the keyboard is same as iPhone 5 (without the function keys.) As the screenshot, you can see that the height of keyboards are not same, and the keys are different.
So, how do I change the keyboard appearance as the native one on iPhone 6/6 Plus?
You have to add special launch images for the iPhone 6 and 6 Plus to get the new keyboard layouts.
The reasoning behind this is that the phone runs your app in a special compatibility mode, that emulates a screen resolution of 320 points in width.
You can easily see, if your app runs in such a mode by outputting the screen resolution:
println("bounds = \(UIScreen.mainScreen().bounds)")
println("nativeBounds = \(UIScreen.mainScreen().nativeBounds)")
Without the designated launch images the output of the iPhone 6 Plus Simulator is:
bounds = (0.0,0.0,320.0,480.0)
nativeBounds = (0.0,0.0,960.0,1440.0)
And there will be no special keyboard
To get a comprehensive understanding of the new resolutions see this great blog entry: http://www.paintcodeapp.com/news/iphone-6-screens-demystified