I have an app in which the viewport is a TabPanel. The last card contains user login fields. When entering these fields, the software keyboard pushed up the TabBar. This occurs in iOS 7 Safari and Android 4.3 Chrome 29, but not in iOS 6.x Safari. This occurs on iOS 7 for both web app and packaged app (built with either iOS 7 SDK or iOS 6 SDK). The packaged app is using Cordova (tested with 2.3 and 2.9).
Steps to reproduce the problem:
Tap in any form field
The result that was expected:
Keyboard lays over app, TabBar remains at bottom of screen (below keyboard)
The result that occurs instead:
Keyboard pushes TabBar up, in some cases obscuring the field
For me, this resolves the issue of the TabBar being pushed up, but instead it pushes up other content by roughly the height of the TabBar -- the title bar goes out of the viewport.
This seems to depend on where the input is in the view. If it is just below the titlebar, this works nicely. If it is lower down, content gets pushed up. It seems to be trying to keep the input in the middle of the viewable area.
From what I can tell this seems to be a change of behaviour in iOS 7. Specifically I've noticed it if the app is compiled in XCode 5 with the iOS7 SDK, but not in XCode 4.6.3 with the iOS 6.1 SDK.
It seems that in iOS7, rather than floating over the webview, the Keyboard now actively shrinks the viewport to make room for itself.
So, as other users have reported, anything docked to the bottom of the view such as the tab bar, or buttons will now move up the screen with the keyboard, because they're sticking to the bottom of the viewport, which is now level to the top of the keyboard.
Last edited by Keab42; 1 Oct 2013 at 6:42 AM.
Reason: Providing a little bit more context.