Android Soft Keyboard hiding EditText when reopened - java

I am developing an app that requires screen pinning and a full window so I hide the navigation bar etc.
When the activity opens and the EditText gains focus the Soft Keyboard will become visible and it will shift the EditText above it -- Great, no problems there.
The issue appears when I dismiss the Soft Keyboard and reopen it by clicking on said EditText, the Soft Keyboard will now hide the EditText.
Any ideas on how I can resolve this? I have tried containing the entire layout inside a ScrollView and the issue is still happening.
Window flags being used:
val flags = (View.SYSTEM_UI_FLAG_LAYOUT_STABLE
or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
or View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
or View.SYSTEM_UI_FLAG_FULLSCREEN
or View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY)
window.decorView.systemUiVisibility = flags
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
Inside my Manifest I use:
android:windowSoftInputMode="stateHidden|adjustResize"
SOLVED.
I managed to resolve this by removing the input type from the EditText.

I managed to solve this by removing the input type from the EditText.

Related

Prevent soft keyboard close except click backPress

I have a Activity with
android:windowSoftInputMode="adjustResize"
And I have tagLayout that has two format(vertical when edittext focused, horizon when edittext unfocused), below are image:
But I want to use soft keyboard to decide whether change to vertical or horizon now, however, when I click button in tagLayout or scroll tagLayout at image2(horizon), soft keyboard disappear directly.
Is there some method to prevent soft keyboard close from click any view(or other method to prevent edittext lose focus when click button or scroll)?

In Fragment Activity when soft keyboard appears screen doesn't resize

I am developing an android app. In this app my main activity has a container to host fragment activity. In my fragment activity I have some editText fields. When I am clicks on one of edit field soft keyboard appears but screen doesn't resize according to current situation. I have tried some suggestions like
android:windowSoftInputMode="adjustResize"
and
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
I am testing at a device which runs MarshMallow OS. What should I do know.

Prevent Keyboard layout hiding toolbar but reveal scroll content

Best description for my issue was at
Keyboard layout hiding android action bar?
And I will paste-quote here:
"I have this problem also but the difference is, i have a list above my edittext and can't use a scrolling container. If I use adjustResize when the edittext is focused it appears above the list and the last items from the list get obscured (list is not pushed up). If I don't use adjustResize on the other hand, when the edittext is focused it pushes everything up but the acionbar is hidden and also I cannot scroll to the top of the list. Can someone share a solution for this? "
So
I have a toolbar
then a chat content
and then a bottom bar for sending a message (editText and a button)
Now, when I tap on an ediText, and soft keyb opens up, I do NOT want my toolbar to collapse and hide, but I do want my chat content to scroll up, so above the bottom entry I will see the last messages from chat content (in listView).
I've tried a number of combinations for Activity adjustResize or adjustPan, but none of them was working. Even wrapped toolbar in CoordinatorLayout and AppBarLayout, but still, no results. Either my content gets pushed/scrolled correctly but toolbar hides OR toolbar stays but softKeyboard overlaps last couple of messages.
The solution I share is a workaround. I had implemented a function scroll(), to scroll my content if a new message arrives, so that was one function I implemented before. I was missing the other part and that is, detect when a softKeyboard was open so I can scroll my content.
That was easy to find here on
How to check visibility of software keyboard in Android?
I hope someone will find this workaround useful and sleep at least a couple more hours.
Note:
Animation of sliding content up is not consistent with softKeyboard sliding up. After keyboard is opened, then I do scroll, which is not in-sync. It is just a snap. But I don't care about that until I find a better solution for orchestrating this event using a native Android component or layout.
The easiest and best solution to all of the above is to simply use the following:
listView.setTranscriptMode(ListView.TRANSCRIPT_MODE_NORMAL);

Soft keyboard hides EditText

Already tried setting android:windowSoftInputMode="adjustPan" in the manifest file,
When I tap the bottom (4th one from top) EditText, the soft keyboard partially hides it:
This however does not happen in the Android emulator - the screen pans and I get the focus on the EditText (keyboard still covers a small part of the EditText but it's acceptable I think):
Put your EditText inside the ScrollView and then give property adjustResize, instead of adjustPan, it will automatically adjust your screen and its components.

Push layout further when soft keyboard opens

I have a RelativeLayout with an EditText and a Button in it.
When the keyboard opens, the layout is pushed up to show the EditText above the keyboard, but it's not enough to bring up the Button to prevent it from hiding under the keyboard.
Is it possible to move the layout up more, or somehow prevent it from being under the keyboard?
Thanks
A similar question has been answered here: Android soft keyboard covers edittext field
Ideally you will be able to use windowSoftInputMode to control how your Activity is moved around when the soft keyboard is displayed.

Categories