Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Implementation Outlined text field Input with lable text in android application

I want to implement this type of layout of input text with float lable but problem is when I run application it not look same and lable appear upper side of input text field.

enter image description here

But, this is my result

enter image description here

My code is:

roundview.xml.

  <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item>
            <shape android:shape="rectangle">
                <solid android:color="#ffffff"/>
                <corners android:radius="10dp" />

                <stroke
                    android:width="2dp"
                    android:color="#3bbdfa"
                    />
            </shape>
        </item>
    </selector>

<android.support.design.widget.TextInputLayout
    android:id="@+id/text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:errorEnabled="true">

    <android.support.design.widget.TextInputEditText
        android:id="@+id/edittxt"
        android:layout_width="match_parent"
        android:layout_height="130dp"
        android:background="@drawable/roundview"
        android:fadeScrollbars="false"
        android:fadingEdge="vertical"
        android:foregroundGravity="fill_vertical"
        android:hint="name"
        android:isScrollContainer="false"
        android:requiresFadingEdge="vertical"
        android:singleLine="false"
        android:visibility="visible" />

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

I follow https://material.io/design for text fields design but I got this problem.thanks

like image 856
Muhammad Mahtab Ahmed Avatar asked Jan 29 '23 01:01

Muhammad Mahtab Ahmed


2 Answers

It can be done by applying Widget.MaterialComponents.TextInputLayout.OutlinedBox style on a TextInputLayout.

<android.support.design.widget.TextInputLayout
        android:id="@+id/name_text_input"
        style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:errorEnabled="true">
        <android.support.design.widget.TextInputEditText
            android:id="@+id/name_edit_text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Name" />
    </android.support.design.widget.TextInputLayout>

You can check this answer which also has a link to an example.

like image 118
ashwin mahajan Avatar answered Jan 30 '23 15:01

ashwin mahajan


Outline Box

Outline text fields have a stroked border and are less emphasized. To use an outline text field, apply the following style to your TextInputLayout:

style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"

Reference: TextInputLayout

like image 22
Napster Avatar answered Jan 30 '23 14:01

Napster