【问题标题】:Android: Text Input Layout: How to change the height if the Edit Text LineAndroid:文本输入布局:如果编辑文本行如何更改高度
【发布时间】:2018-08-03 08:49:19
【问题描述】:

有一种方法可以改变TextInputLayout中Edit Text行的颜色:

 <item name="colorControlNormal">@color/White</item>
 <item name="colorControlActivated">@color/red</item>

但是有什么方法可以改变编辑文本行的高度吗?

【问题讨论】:

标签: android android-edittext android-styles android-textinputlayout


【解决方案1】:

不,你不能改变edittext行的高度,你可以像这样自定义edittext行

android:backgroud=@null

edittext 下方的 View 可以设置颜色高度宽度等。

<View android:height="5dp"android:backgroud='#000000'/>

【讨论】:

    【解决方案2】:

    您可以为此创建自定义可绘制对象并将其应用于edittext。

    edt_bg_selector.xml:

    ?xml version="1.0" encoding="utf-8"?>
    selector xmlns:android="http://schemas.android.com/apk/res/android">
    item android:drawable="@drawable/edt_bg_selected" android:state_focused="true"/>
    item android:drawable="@drawable/edt_bg_normal" android:state_focused="false"/>
    /selector>
    

    edt_bg_normal.xml:

        <solid android:color="#00FFFFFF" />
    
        <padding
            android:bottom="5dp"
            android:left="5dp"
            android:right="5dp"
            android:top="5dp" />
    </shape>
    

    edt_bg_selected.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:bottom="1dp"
        android:left="-2dp"
        android:right="-2dp"
        android:top="-2dp">
        <shape android:shape="rectangle" >
            <stroke
                android:width="1px"
                android:color="#ff0000" />
    
            <solid android:color="#00FFFFFF" />
    
            <padding
                android:bottom="5dp"
                android:left="5dp"
                android:right="5dp"
                android:top="5dp" />
        </shape>
    </item>
    </layer-list>
    

    布局文件

    <EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/edt_bg_selector" />
    

    【讨论】:

      【解决方案3】:

      不,没有预定义的方法可以更改height。但是,您可以在EditText 上设置自定义背景,该背景是可绘制的,您可以在其中设置任何属性。比如颜色、高度或填充。检查this answer.

      【讨论】:

        【解决方案4】:

        @color/md_white_1000

            <item name="colorControlActivated">@color/md_white_1000</item>
        </style>
        
        <style name="MyHintText" parent="TextAppearance.AppCompat.Small">
            <item name="android:textColor">@color/md_white_1000</item>
        </style>
        
        <style name="MyErrorText" parent="TextAppearance.AppCompat.Small">
            <item name="android:textColor">@color/md_red_500</item>
        </style>
        

        【讨论】:

          猜你喜欢
          • 2020-10-05
          • 1970-01-01
          • 1970-01-01
          • 2011-11-03
          • 2022-01-23
          • 1970-01-01
          • 1970-01-01
          • 2014-10-29
          • 1970-01-01
          相关资源
          最近更新 更多