2012-02-24 70 views
5

我是android新手。我正在创建一个示例页面,我需要将页面背景设置为白色。但是,如果不集中,我的编辑文本在白色背景下不可见。我如何将所需颜色的边框添加到我的编辑文本中,以便它变得可见。除此之外,当我按下输入编辑文本框时,它正在添加一个新行。我想删除这也。任何机构都可以帮助我解决这个问题。 在此先感谢关于编辑文本完整边框

回答

30

你可以为你的edittext设置一个drawable。

edittext_bg.xml:(把这个文件在你的文件夹绘制)

<?xml version="1.0" encoding="UTF-8" ?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#ffffff" /> 
    <stroke android:width="3dp" android:color="#000000" /> 
    <padding android:left="2dp" android:top="2dp" android:right="2dp" android:bottom="2dp" /> 
</shape> 

然后设置您的EditText的背景为android:background="@drawable/edittext_bg"。 但是这会删除edittext的所有默认背景效果。当它处于选中状态或正常状态时,您可以为edittext创建一个选择器,以便为它提供不同的背景。

而且您可以在您的edittext标记中设置android:singleLine="true"以防止它在edittext中有多行。

+0

感谢那些帮助我。 – Android 2012-02-28 06:48:06

+0

谢谢..它工作... – 2013-06-05 03:52:09

0

您需要将EditText的背景设置为一个Drawable资源,该资源完全符合您的需求。最好的方法是使用选择器(通常用于按钮来获得正常,悬停和按下/点击下来的所有资源)。http://androidwizard.net/2010/02/custom-button-backgrounds-using-a-selector-xml-layout/

在您的选择器中,选择您想要的图像根据EditText是否关注或切换进行切换。 Hiral有一个用形状绘制的示例图像,但您应该确切地确定每个状态的样子。

至于新的线路,如果你想这一切对一个符合Hiral去,如果你想多行但没有进入新的生产线,看到这个Prevent enter key on EditText but still show the text as multi-line