I have a login screen with some textfields, textboxs, buttons and having the background image to the screen. Now the issue is on touch devices when virtual keyboard is popups, the screen shrinks with its background image and all components alignment get disturbed. I have also enabled the Vertical scroll to the screen but still alignment get disturbed. Please can one help me to sort out this issue.
Thanks,
I guess, you are using Display.getHeight() for the alignment of UI component. And after displaying virtual keyboard, Display.getHeight() not return the actual screen height. It's return the height excluding the keyboard height.
Related
I am using TableView in my app. But as I zoom to highest available screen resolution. There I found two horizontal scrollbars. One vertical scrollbar is from the table view. I think next one is from the Default from iOS. I need to disable another except table view. Can I do this?
As i keep on Scrolling i can find two scroll Bars.I need to disable this ScrollBar since this is not of UIScroll View.
Its just the simulator window scroll bar. You will not see it on the device. Second scroll bar indicates scrolling for the simulator window and it appears only when the simulator window extends beyond the mac screen.
I'm making a basic app in XCode but setting up all the components is giving me trouble, why will this button not appear in landscape mode?
The way you are using Autolayout is the problem here. You are setting constants for the distances of bottom space and top space. When the device orientation changes, this leads to undesired results, such as that the button is not on screen any more.
A better approach will be to position the views relative to each other. So, if you want the button to stay directly beneath the text field, you can set the vertical space of these two components instead of using bottom space for the button.
Its an issue of constraints.
Set the constraints relative to your above textfield.
You are setting 347px from bottom, which leads the button to get out from the screen.
We have an app that is a fixed width and height and does not allow the user to scroll. As part of this app we have a navbar that is fixed to the screen under the status area. This all works great.
The problem is that when a keyboard is shown, it shifts our app window up to make room for the keyboard. At this point its possible to scroll our app and the titlebar which should be fixed to the top is no longer on screen.
Ideally the keyboard would still show, but our app window would resize so its not as tall, but items fixed to the top are still fixed to the top. also, you should not be able to scroll the window at this point.
So as Sani mentioned in a comment the Iconic keyboard plugin does in fact do what I'm looking for:
https://github.com/driftyco/ionic-plugins-keyboard
using:
cordova.plugins.Keyboard.disableScroll(true);
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
It looks like the Safari keyboard works like this on iPads...
If the webpage originally reaches the bottom of the screen, when the keyboard appears it never scrolls past the bottom of the webpage.
If the webpage originally doesn't reach the bottom of the screen and the textfield that has the focus is more than halfway down the screen, it scrolls the webpage so that the current textfield is now halfway down the screen and doesn't care if the area below the original webpage is showing.
Basically I want to have a webpage that doesn't fill the screen vertically and yet I don't want the keyboard to cause the screen to scroll past the bottom of the webpage because that would hide the top part of the webpage and instead show the blank area below the webpage.
In portrait mode on an iPad the following webpage is always showing even when a textfield is active and the keyboard is showing:
http://sky-walker.net/temp/ipad/a
But when you view that webpage in landscape mode and select the bottom textfield, the webpage scrolls so that the bottom textfield is halfway up the screen. I want it to be at the bottom of the screen.
http://sky-walker.net/temp/ipad/b
In landscape mode the previous link fills the entire screen and so if you click on the bottom textfield (after scrolling) the textfield appears at the bottom of the screen when the keyboard is visible rather than the screen scrolling until the textfield is halfway down the screen.
In portrait mode the previous link doesn't originally fill the screen so if you click on the bottom textfield (making the keyboard appear) it scrolls up so that it is halfway up the screen.
http://sky-walker.net/temp/ipad/d
The final link fills the entire screen for portrait mode as well and when the bottom textfield is selected it doesnt scroll past the bottom of the webpage when the keyboard becomes visible.
Maybe what it is doing when the webpage isn't filling the screen is that it is remembering the empty space at the bottom and then it scrolls up (hiding the top) when the keyboard is visible. I want it to forget about the empty space at the bottom when the keyboard appears.
I faced a very similar issue. Here's what I do.
I subscribe to UIKeyboardWillShowNotification to get the keyboard size then when the scroll view scrolls up more than the keyboard height then I set the scroll offset to the keyboard height.
I have implemented a customized ListField with some LabelFields. Here is the screenshot.
The problem is when I scroll the ListField, the whole scroll getting scrolled. Like this Screenshot..
I want the headerfield and the Field between header and the ListField to be stationary and only the listfield get scrolled. How can I achieve this?..Please help me...
Use setBanner(Field field) to create an area at the top of your screen which will always be visible.
By the way, you almost certainly don't need a 'Back' button in the top bar (like you would on an iPhone app) because all BlackBerrys have a physical back button for this purpose. The default action for it is to close the current screen (by popping it off the screen stack) and returning to the previous screen or closing the app if there are no more screens.
You can use 2 different managers and let only the manager that has the listfield to scroll