Android-EditText边框不可见

时间:2018-10-20 21:23:56

标签: android android-studio android-layout

嗨,EditText的边框有问题

这是我的背景/边界xml代码:

    <?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <corners android:radius="20dp"/>
    <padding android:left="10dp" android:right="10dp" android:top="10dp" android:bottom="10dp"/>
    <solid  android:color="#efefef"/>
    <stroke android:width="2dp" android:color="#efefef"/>
</shape>

但是没有显示边框。

编辑:

这是我的EditText代码

<EditText
    android:id="@+id/stackoverflow"
    android:layout_width="201dp"
    android:layout_height="53dp"
    android:layout_marginTop="8dp"
    android:layout_marginEnd="20dp"
    android:background="@drawable/backwithborder"
    android:backgroundTint="@color/colorPrimary"
    android:ems="10"
    android:importantForAutofill="no"
    android:inputType="stackoverflow"
    android:textAlignment="viewStart"
    android:textSize="24sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toEndOf="@+id/stackoverflow"
    app:layout_constraintTop_toTopOf="@+id/stackoverflow"
    tools:targetApi="o" />

3 个答案:

答案 0 :(得分:3)

该代码有效,但是问题是您对边框和纯色使用了相同的颜色。 因此边界将成为实体的一部分。 尝试像这样更改边框的颜色。

<stroke android:width="2dp" android:color="#3a3a3a"/>

根据您的更新,您的EditText中有一些错误

<EditText
    android:id="@+id/stackoverflow"
    android:layout_width="201dp"
    android:layout_height="53dp"
    android:layout_marginTop="8dp"
    android:layout_marginEnd="20dp"
    android:background="@drawable/backwithborder"
    android:backgroundTint="@color/colorPrimary"
    android:ems="10"
    android:importantForAutofill="no"
    android:inputType="stackoverflow"
    android:textAlignment="viewStart"
    android:textSize="24sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toEndOf="@+id/stackoverflow"
    app:layout_constraintTop_toTopOf="@+id/stackoverflow"
    tools:targetApi="o" />

1-没有stackoverflow inputType

2-使用android:backgroundTint时,视图将采用其颜色,因此背景将无用。

尝试删除android:backgroundTint="@color/colorPrimary" 和一个ndroid:inputType="stackoverflow"

别忘了更改stroke的颜色

答案 1 :(得分:1)

从代码芽中删除此行-

android:backgroundTint="@color/colorPrimary"

并在可绘制对象中使用不同的笔触和实心颜色。

答案 2 :(得分:0)

更改笔触的颜色,然后尝试增加笔触的宽度