Reputation: 1115
This question is related to this other one (Android). A sample test case was also provided here
Basically, I can get past the "glitch" of losing the bottom screen under the keyboard that occurs sometimes when a single line TextField
is focused by setting the TextField
's bottom padding and making it a layer
But when the same glitch occurs to a multi-line TextField
, each time the cursor is moved to a different line the keyboard follows the current line and hides everything underneath. I've been looking at TextArea
and Component
but I can't see anything there that stops this behavior. My "trick" of making the TextField
a layer with bottom padding doesn't work in multi-line mode. I'm out of options, could this be enabled or alternatively is there some magic method somewhere I am missing?
Also, I've checked that calling getComponentForm().getInvisibleAreaUnderVKB()
returns 0 when the glitch occurs
Upvotes: 1
Views: 43
Reputation: 1115
Solution to prevent this consists in setting the Form
's setFormBottomPaddingEditingMode(true);
. Easy fix! 👍
Upvotes: 0
Reputation: 52770
I think you need to re-open the applicable issue. This code is very platform specific as the virtual keyboard behavior is handled 100% within the Android port.
Android doesn't implement getInvisibleAreaUnderVKB()
since the VKB doesn't work that way in Android. It resizes the screen instead to provide the additional space. It will generally try to get the top area where your cursor is. That's the chief goal.
When the screen is empty that might look problematic but when your screen is full of data we'd rather see the data than have the full text component in view. Unfortunately, the native editing code has no way to distinguish between the two cases. We might be able to come up with a workaround but with these things there are often issues/regressions.
Upvotes: 1