Измените толщину нижней строки EditText, когда она завернута в TextInputLayout

вот мой код

Разметка XML

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/TextLabel">

    <EditText
        android:id="@+id/etContactName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Contact Name"/>

</android.support.design.widget.TextInputLayout>

Стиль

<style name="TextLabel" parent="TextAppearance.AppCompat">
    <item name="android:textColorHint">@color/hintColor</item>
    <item name="colorAccent">@color/primaryColor</item>
    <item name="colorControlNormal">@color/hintColor</item>
    <item name="colorControlActivated">@color/primaryColor</item>
</style>

Вот результат
(нормальный вид)
Обычный вид

(сфокусированное изображение)

Фокусированный вид

Теперь мои проблемы/проблемы

  • Я хочу, чтобы нижняя строка была тоньше. где я должен его изменить.
  • Мигающий курсор не отображается, как его показывать.
  • EditText автоматически выделяет орфографические ошибки. Мне нужно остановить его.

Кто-нибудь может указать мне правильный способ решения проблем. Комментируйте, что вам нужно больше информации, чтобы ответить на этот вопрос.

Спасибо заранее.

Ответы

Ответ 1

Я решил проблему, используя свой собственный xml drawable. Там может быть какой-то лучший способ, но я не мог найти. следующая моя моя возможность, которую я использую в качестве фона моего текстового поля

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <layer-list >
            <item
                android:bottom="1dp"
                android:left="-2dp"
                android:right="-2dp"
                android:top="-2dp">
                <shape android:shape="rectangle" >
                    <stroke
                        android:width="0.5dp"
                        android:color="@color/primaryColor" />

                    <solid android:color="#00FFFFFF" />

                    <padding android:left="3dp"
                        android:right="3dp"
                        android:top="3dp"
                        android:bottom="3dp" />
                </shape>
            </item>

        </layer-list>
    </item>
    <item android:state_focused="true">
        <layer-list >
            <item
                android:bottom="1dp"
                android:left="-2dp"
                android:right="-2dp"
                android:top="-2dp">
                <shape android:shape="rectangle" >
                    <stroke
                        android:width="0.5dp"
                        android:color="@color/primaryColor" />

                    <solid android:color="#00FFFFFF" />

                    <padding android:left="3dp"
                        android:right="3dp"
                        android:top="3dp"
                        android:bottom="3dp" />
                </shape>
            </item>

        </layer-list>
    </item>
    <item>
        <layer-list >
            <item
                android:bottom="1dp"
                android:left="-2dp"
                android:right="-2dp"
                android:top="-2dp">
                <shape android:shape="rectangle" >
                    <stroke
                        android:width="0.5dp"
                        android:color="#BCBCBC" />

                    <solid android:color="#00FFFFFF" />

                    <padding android:left="3dp"
                        android:right="3dp"
                        android:top="3dp"
                        android:bottom="3dp" />
                </shape>
            </item>

        </layer-list>
    </item>

</selector>

Ответ 2

Цвет нижнего слоя Edittext

android:backgroundTint="@color/yourcolor"

Чтобы отключить проверку орфографии, добавьте код в свой XML-адрес Edittext

android:inputType="textNoSuggestions"

Создайте XML файл с именем "EditTextStyle.xml" в выпадающей папке в вашем проекте и напишите следующий код:

<?xml version="1.0" encoding="utf-8" ?>

   <shape xmlns:android="http://schemas.android.com/apk/r..."
   android:thickness="0dp"
   android:shape="rectangle">
  <stroke android:width="3dp"
     android:color="#4799E8"/>
  <corners android:radius="5dp" />
  <gradient
  android:startColor="#C8C8C8"
  android:endColor="#FFFFFF"
  android:type="linear"
  android:angle="270"/>
  </shape>

Теперь добавьте следующий атрибут в свой EditText:

       <EditText    

        android:background="@drawable/EditTextStyle"/>