设置厚度为android中的edittext材质设计

时间:2016-02-15 07:43:31

标签: android android-edittext android-textinputlayout

我想设置我的edittex材料设计android app的厚度检查我的下图

enter image description here

在电子邮件ID和手机号码edittex中看到我希望那个文本字段在我关注的时候很薄,所以我可以使它成为可能吗?你的所有建议都很感激

下面的

是我的xml布局

<android.support.design.widget.TextInputLayout
            android:id="@+id/input_layout_email"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/txt_title"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="10dp">

            <EditText
                android:id="@+id/edt_email"
                style="@style/Edittext"

                android:hint="EMAIL ID / MOBILE NUMBER"
                android:textColor="@color/textfield_color" />

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

        <android.support.design.widget.TextInputLayout
            android:id="@+id/input_layout_pass"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/input_layout_email"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp">

            <EditText
                android:id="@+id/edt_password"
                style="@style/Edittext"
                android:hint="PASSWORD"
                android:inputType="textPassword"
                android:textColor="@color/textfield_color" />

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

style.xml

 <style name="Edittext">
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:layout_margin">5dp</item>
    <item name="android:singleLine">true</item>
    <item name="android:ellipsize">end</item>
    <item name="android:textSize">15dp</item>
    <item name="android:textColor">@android:color/black</item>
</style>

3 个答案:

答案 0 :(得分:0)

使用此作为Edittext的背景:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
   android:thickness="10dp"
   android:shape="line">
   <solid android:color="#FFFFFF" />
   <stroke android:width="2dp"
        android:color="#00cc33"/>

</shape>

答案 1 :(得分:0)

我在材质设计Textinputlayout控件

中为瘦edittext制作解决方案

为edittext背景制作可绘制的xml

<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape android:shape="rectangle">
        <!-- Draw a 2dp width border around shape -->
        <stroke
            android:color="@color/colorPrimaryDark"
            android:width="1dp"
            />
    </shape>
</item>
<!-- Overlap the left, top and right border using background color  -->
<item
    android:bottom="1dp"
    >
    <shape android:shape="rectangle">
        <solid android:color="#fffbce"/>
    </shape>
</item>

现在在主要布局

中设置为Edittex Control的背景
<android.support.design.widget.TextInputLayout
                        android:id="@+id/input_layout_fname"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                         android:layout_marginTop="5dp"
                         >
          <EditText
             android:id="@+id/edt_fname"
             style="@style/Edittext"
             android:hint="First Name *"
             android:textSize="13dp" />
 </android.support.design.widget.TextInputLayout>

答案 2 :(得分:0)

您可以使用参数 boxStrokeWidth boxStrokeFocused 来更改宽度。 但请注意,在这种情况下,应用程序的主题必须是Theme。 MaterialDesign .Light.DarkActionBar而不是Theme.AppCompat.Light.DarkActionBar

<com.google.android.material.textfield.TextInputLayout
    android:id="@+id/layout_input"
    style="@style/BaseRoundCornerTextInputStyle"
    android:theme="@style/BaseTextInputTheme"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:boxStrokeWidth="2dp"
    app:boxStrokeFocused="4dp"
    app:errorEnabled="false"
    app:errorTextAppearance="@style/BaseInputLayoutErrorAppearance"
    app:passwordToggleEnabled="true"
    tools:errorEnabled="true">

    <com.google.android.material.textfield.TextInputEditText
        android:id="@+id/etxt_input"
        style="@style/BaseEditTextStyle"
        android:layout_width="match_parent"
        android:layout_height="@dimen/height_edit_text_sign_in"
        android:singleLine="true"
        android:importantForAutofill="noExcludeDescendants"
        tools:inputType="textPassword"
        tools:text="Hello Hello Hello"/>

</com.google.android.material.textfield.TextInputLayout>