无法设置EditText的样式

时间:2017-09-09 17:07:36

标签: android

我为EditText创建了自己的样式,但它不起作用

风格:

<style name="InputTextBox" parent="@android:style/Widget.EditText">
        <item name="background">@drawable/text_area_box</item>
        <item name="android:paddingLeft">16dp</item>
        <item name="android:paddingRight">16dp</item>
        <item name="android:paddingTop">8dp</item>
        <item name="android:paddingBottom">8dp</item>
        <item name="android:gravity">top</item>
    </style>

XML格式的EditText:

 <EditText
        app:theme="@style/InputTextBox"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginTop="16dp"
        app:layout_constraintTop_toBottomOf="@+id/spinner_to"
        android:layout_marginLeft="0dp"
        app:layout_constraintLeft_toLeftOf="@+id/spinner_from"
        android:layout_marginRight="0dp"
        app:layout_constraintRight_toRightOf="@+id/spinner_to"
        app:layout_constraintHorizontal_bias="0.0"
        android:hint="@string/translate_text_input_hint"
        android:layout_marginBottom="0dp"
        app:layout_constraintBottom_toTopOf="@+id/guideline"
        app:layout_constraintVertical_bias="0.0"
        android:id="@+id/et_input_text" />

我尝试将样式中的父级更改为Widget.AppCompat.EditText,Base.Widget.AppCompat.EditText和其他但仍然没有结果

1 个答案:

答案 0 :(得分:0)

要在EditText设置样式,您需要设置android:theme

 <EditText
       android:theme="@style/InputTextBox"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginTop="16dp"
        app:layout_constraintTop_toBottomOf="@+id/spinner_to"
        android:layout_marginLeft="0dp"
        app:layout_constraintLeft_toLeftOf="@+id/spinner_from"
        android:layout_marginRight="0dp"
        app:layout_constraintRight_toRightOf="@+id/spinner_to"
        app:layout_constraintHorizontal_bias="0.0"
        android:hint="@string/translate_text_input_hint"
        android:layout_marginBottom="0dp"
        app:layout_constraintBottom_toTopOf="@+id/guideline"
        app:layout_constraintVertical_bias="0.0"
        android:id="@+id/et_input_text" />