浮动标签自定义

时间:2015-12-22 07:00:33

标签: android android-layout

有没有办法向浮动标签上移一点?

我的编辑文本实际上有一个边框或一个框架,但当提示浮动时,它会漂浮在边界线上。

任何人都可以帮助我吗? 请?

5 个答案:

答案 0 :(得分:1)

是有解决此问题的方法。使用

android:translationY="10dp"

到您的EditText

答案 1 :(得分:0)

使用此textinputlayout,

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

                                    <EditText
                                        android:id="@+id/etUsername"
                                        android:layout_width="match_parent"
                                        android:layout_height="wrap_content"
                                        android:layout_centerHorizontal="true"
                                        android:layout_centerVertical="true"
                                        android:ems="10"
                                        android:hint="Username"
                                        android:imeOptions="actionNext"
                                        android:inputType="text|textNoSuggestions"
                                        android:maxLength="255"
                                        android:singleLine="true" />

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

您可以使用此样式,根据需要设置字体,根据需要进行编辑

<style name="TextLabel" parent="TextAppearance.Design.Error">
            <!--//hint color And Label Color in False State-->
            <!--<item name="android:textColorHint">@color/colorPrimary</item>-->
            <item name="android:textSize">@dimen/font_normal_size</item>
            <!--//Label color in True State And Bar Color False And True State-->
            <item name="colorAccent">@color/colorAccent</item>
            <!--<item name="colorControlNormal">@color/</item>
            <item name="colorControlActivated">@color/Color Name</item>-->
        </style>

答案 2 :(得分:0)

android:padding肯定存在问题。我没有看到你的代码,但你可能把它们放在错误的地方。

首先删除它们,如果问题仍然存在,请告诉我:

以下是Android Material Design Floating Labels for EditText教程

的示例代码
  

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|enterAlways"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
</android.support.design.widget.AppBarLayout>

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_marginTop="?attr/actionBarSize"
    android:orientation="vertical"
    android:paddingLeft="20dp"
    android:paddingRight="20dp"
    android:paddingTop="60dp">

    <android.support.design.widget.TextInputLayout
        android:id="@+id/input_layout_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <EditText
            android:id="@+id/input_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:singleLine="true"
            android:hint="@string/hint_name" />
    </android.support.design.widget.TextInputLayout>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/input_layout_email"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <EditText
            android:id="@+id/input_email"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textEmailAddress"
            android:hint="@string/hint_email" />
    </android.support.design.widget.TextInputLayout>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/input_layout_password"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <EditText
            android:id="@+id/input_password"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textPassword"
            android:hint="@string/hint_password" />
    </android.support.design.widget.TextInputLayout>

    <Button android:id="@+id/btn_signup"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/btn_sign_up"
        android:background="@color/colorPrimary"
        android:layout_marginTop="40dp"
        android:textColor="@android:color/white"/>

</LinearLayout>   </android.support.design.widget.CoordinatorLayout>

另请参阅另一个很好的示例,了解如何从Google Samples Github存储库中实现它

希望有所帮助

答案 3 :(得分:0)

尝试调整

android:paddingTop=""
android:paddingBottom="" 
浮动标签的

属性

答案 4 :(得分:0)

        enter code here
        <android.support.design.widget.TextInputLayout
        android:id="@+id/firstnameLayout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1">

        <EditText
            android:id="@+id/firstname_text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:singleLine="true"
            android:hint="First Name"
            android:inputType="text"
            android:drawableLeft="@drawable/ic_person_black_18dp"
            android:drawablePadding="5dp"
            android:textColorHint="#693EB4" />
       </android.support.design.widget.TextInputLayout>

尝试这可能会对你有帮助。