Keyboard covers Exidtext field [duplicate] - android

This question already has answers here:
How to adjust layout when soft keyboard appears
(18 answers)
Closed 5 years ago.
The Edittext field is covered with the current keyboard.
People don't see what they are typing at the moment. The page is a fragment.
Here is a XML layout of the mentioned Edittext:
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="#+id/commentEditText"
android:windowSoftInputMode="adjustPan"
android:hint="Opmerkingen" />
It doesn't work. Maybe I'm doing it the wrong way. Can you help me to solve it?
https://i.stack.imgur.com/XmuXm.png

use android:windowSoftInputMode=adjustPan in mainfiest file inside activity
use like this see example
<activity
android:name=".activity"
android:windowSoftInputMode="adjustPan|stateAlwaysHidden">
</activity>

You can try using android:windowSoftInputMode="adjustResize" in your activity's manifest file, which will resize your screen to fit keyboard.
If user still cannot see input on EditText you can try android:windowSoftInputMode="adjustPan", which does not resize screen to make room for the soft keyboard. Rather, the contents of the window are automatically panned so that the current focus is never obscured by the keyboard and users can always see what they are typing.

Add this line to your activity tag in Menifest file,
<activity
android:name=".LoginActivity"
android:windowSoftInputMode="stateAlwaysHidden|adjustPan"/>

Related

How to prevent soft keyboard from appearing on touch

I don't want the soft keyboard to appear when a particular EditText is touched. But I still want to be able to show the soft keyboard upon user request (say, when a button is pressed) and allow the user to edit the text.
I know how to show/hide the soft keyboard, I only don't know how to prevent it from appearing on touch.
Any suggestion how to do it?
The general idea is that the user will be mostly working with selection/position within the text, and only occasionaly entering characters.
I don't want the visible amount of text to be reduced by the soft keyboard when selecting or navigating the text.
simply use
txtEdit.setShowSoftInputOnFocus(false);
and when you want to enable that , reverse above process
This works:
editText.setShowSoftInputOnFocus(false);
within the activity in the manifest add the below code
android:windowSoftInputMode="adjustPan"
AndroidManifest.xml windowSoftInputMode
<activity android:name=".MyActivity" android:windowSoftInputMode="adjustPan"> </activity>
Try the below code, it hides the keyboard:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN)
Why don't you disable the edittext. Then it will not show keyboard on click. To this you can:
android:editable="false" //from xml
et.setEnabled(false); //from activity
And then on your buttonClick make it enable by setting above code true. And make your keyboard appear.
Also If you don't get the focus on edittext you can:
et.requestFocus(); // from activity
<EditText
android:id="#+id/et1"
android:editable="false"
android:layout_width="150dp"
android:layout_height="wrap_content" >
<requestFocus/>
</EditText>
//from xml
Hope this helps!

Soft keyboard hide EditText in lollipop version

I have a layout which contain RelativeLayout as Root layout,Relative layoout contain ListView at Top and one Edittext align at the bottom of relative layout.
In Pre lollipop version devices whenever soft keyboard open Edittext pushed up and I am able to see the Editext.
But in lollipop soft keyboard hide the Editext.
I have already set android:windowSoftInputMode="adjustPan|adjustResize" in manifest file.
Please help me
try to give fitsSystemWindows in your main layout( for lollipop versions)
android:fitsSystemWindows="true"
also in the manifest give
android:windowSoftInputMode="adjustResize"
hope this will help
Thanks for your valuable input. Finally I have fixed this issue.
What I found the reason behind this issue is application theme. My application theme was
android:Theme.Light in which I found this issue. I have only changed the theme of my EditText layout activity by setting
android:theme="#android:style/Theme.Black.NoTitleBar"
e.g.
<activity
android:name=".activity.LiveStreamingActivity"
android:label="#string/title_activity_event_performer"
android:theme="#android:style/Theme.Black.NoTitleBar"
android:screenOrientation="portrait" />
This solved my problem !!!
May be your activity is full screen. Try clearing the FULLSCREEN flag.
I too had the same issue and it was because of the usage of a menudrawer library which was not supported by lollipop and when I replace that with default navigation drawer of android the things started working fine.Please check with the libraries if you use any.
The important value is the adjustResize. This will shift the whole UI up to give room for the soft keyboard.
<activity
android:name="com.my.MainActivity"
android:screenOrientation="portrait"
android:label="#string/title_activity_main"
android:windowSoftInputMode="adjustResize|stateHidden" >
</activity>

Android : Showing keyboard hides listview contents

like in this post : Keyboard hides ListView contents
I can't See Contents of my first few rows of my ListView when Keyboard is Visible.
Because my first probleme was to have my element in the bottom so i've follow this tips : Android : Showing keyboard moves my components up, i want to hide them instead
but
android:windowSoftInputMode="adjustPan"
created another issue, my listview is not resize when my keyboard is up and i can't see my first few rows
Thanks
I had the same issue and solved this with the below code.
in your activity:
mylistview.setTranscriptMode(ListView.TRANSCRIPT_MODE_NORMAL);
mylistview.setStackFromBottom(true);
or in xml file for
android:stackFromBottom="true"
android:transcriptMode="normal"
and keeping the adjustResize for activity in manifest file.
<activity .... android:windowSoftInputMode="stateHidden|adjustResize" ..../>
Source: Push Listview when keyboard appears without adjustPan

EditText doesn't start automatically

In my app, I have an EditText. How do I make it doesn't start automatically? Like: once they open the activity it automatically sets the mouse to the EditText and the keyboard gets opened so they type…
Is there anyway I can make it open (the keyboard shows and the user can type) when they clicks on it?
Ok, so from your question i figure out that your EditText is getting focus while starting the activity. You can disable the focus using following command to suppress the keyboard.
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
Visit this Close/hide the Android Soft Keyboard
the answer by Lucifer must work. But when i got the same problem, that solution did't work, and someone suggested me this.
add a fake layout as the first element in you parent layout and make it focusable.
Like this:
<ParentLayout
.....
......>
<LinearLayout
android:layout_width="0dp"
android:layout_height="0dp"
android:background="#android:color/transparent"
android:focusable="true"
android:focusableInTouchMode="true" >
</LinearLayout>
......
......
......
</ParentLayout>
This definitely works, but the best solution is:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

android: get rid of focus when enter activity [duplicate]

This question already has answers here:
Closed 11 years ago.
Possible Duplicate:
Stop EditText from gaining focus at Activity startup?
I have an activity has a EditText inside, and each time when the activity starts up, the EditText automatically get the focus.
I don't want the EditText gets the focus automatically, how can I do?
I had the similar issue and i am sure this is the problem, for that you just need to do a small trick.
Add this LinearLayout before the EditText which is getting focus at activity startup. You don't need to set any value inside the EditText.
<LinearLayout
android:focusable="true"
android:focusableInTouchMode="true"
android:layout_width="0dip"
android:layout_height="0dip"
android:id="#+id/dummyView"/>
Add this in <activity> tag in your manifest for activity in which edittext is present.
android:windowSoftInputMode="stateHidden"
put android:focusable="false" may it will work for edittext

Categories

Resources