Android EditText边框背景颜色

时间:2015-04-27 10:00:42

标签: android android-layout colors android-edittext border

在我的应用程序中,我将.low { height: 30px; width: 100%; text-align: center; margin-bottom: 5px; } .high { height: 45px; width: 100%; text-align: center; margin-bottom: 5px; } #div1 { background-color: pink; } #div2 { background-color: lightgrey; } #div3 { background-color: green; } #div4 { background-color: lightblue; } #div5 { background-color: brown; } #div6 { background-color: darkgrey; } #div7 { background-color: cadetblue; }设置为边框背景颜色,并且它在所有设备上都能正常工作,但在我的4.1.2设备上,整个<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet"/> <div class="container"> <div class="low" id="div1">div1</div> <div class="low" id="div2">div2</div> <div class="row"> <div class="col-xs-3"> <div class="low" id="div3">div3</div> <div class="low" id="div4">div4</div> <div class="low" id="div5">div5</div> </div> <div class="col-xs-9"> <div class="high" id="div6">div6</div> <div class="high" id="div7">div7</div> </div> </div> </div>显示为黑色。我可以在其中输入文字,一切正常但文字不可见,因为EditText是完全黑色的。如果我删除背景边框颜色,它可以正常工作。

这是我的edittext的xml代码。

EditText

edittext_border.xml

EditText

请给我任何解决方案。

5 个答案:

答案 0 :(得分:9)

试试这个形状。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle"
    android:thickness="0dp" >

    <stroke
        android:width="1dp"
        android:color="@color/test_blue_light" />
    <solid android:color="@color/white"/>

    <corners android:radius="5dp" />

</shape>

答案 1 :(得分:2)

我知道这是一个老问题而且有一个可接受的答案,但我想更新@ Sajal对未来遇到同样问题的人的答案。最好使用“透明”作为纯色,这样就不会影响当前的布局设计。

<?xml version="1.0" encoding="utf-8"?>
   <shape xmlns:android="http://schemas.android.com/apk/res/android"
      android:shape="rectangle"
      android:thickness="0dp" >

      <stroke
          android:width="1dp"
          android:color="@color/test_blue_light" />
      <solid android:color="@android:color/transparent"/>

      <corners android:radius="5dp" />

   </shape>

答案 2 :(得分:1)

将solid属性设置为您的背景(可绘制)文件。

        <solid color="color according to your need">

答案 3 :(得分:1)

如果你只想显示边框,并设置为bg透明使用上面的代码`

<corners
    android:radius="5dp"></corners>

<stroke
    android:width="2px"
    android:color="@color/colorPrimary"></stroke>

<solid android:color="@android:color/transparent"/>

`

答案 4 :(得分:0)

在可绘制的shape_border_and_background_login.xml中创建xml文件:

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

    </solid>
<stroke
    android:width="2dp"
    android:color="@color/white" />

将形状文件添加到EditText背景:

 <EditText
                      android:id="@+id/edt_email"
                      android:layout_width="0dp"
                      android:layout_height="wrap_content"
                      android:layout_weight="10"
                    android:background="@drawable/shape_border_and_background_login"
                      android:inputType="textPersonName"
                      android:padding="@dimen/size15"
                      android:textSize="@dimen/size17"
                     />