android: singleline = true not working for edittext-ThrowExceptions

Exception or error:

I want to restrict the edittext entry to a single line but When I add the line android:singleline = "true", the hint is disappears, and after entering 26 characters the cursor is coming down.

Here’s my XML code:

   <EditText                      
            android:background="@drawable/edittxtborder"
            android:id="@+id/reglastname"
            android:singleLine="true"
            android:gravity="center"
            android:hint="@string/reglname"
            android:textSize="12dp" 
   />
How to solve:

add this code in your edittext xml code.

android:ellipsize="end"

this will work.

###

Use value for the attribute inputType other than textMultiLine. The input will be single line. The attribute singleLine is deprecated.

###

I checked your code and the problem is with android:gravity=”center”. Change it to android:gravity=”left” and you will be able to see the hint.

###

You can use setMaxLines(int) to change line numbers programmaticaly.

EditText edit_field = new EditText(this);
edit_field.setMaxLines(1);

###

You can edit the button in the code directly by setting its input type to TYPE_CLASS_TEXT. This will allow all kinds of characters, numbers, and space to be entered in, but no enter. So in effect it will restrict it to one line.

EditText editText = new EditText(this);
editText.setInputType(InputType.TYPE_CLASS_TEXT);

You should also restrict the maximum amount of characters that can be entered into the EditText. This can also be done through code using an InputFilter and calling setFilters method of the EditText with the InputFilter.

###

Please use

android:maxLines="1"

instead of

android:singleLine="true" due to deprecate

Leave a Reply

Your email address will not be published. Required fields are marked *