web-dev-qa-db-ja.com

EditTextのカスタムデザイン

カスタムデザインEditTextがあります

enter image description here

search_page.xml

<LinearLayout
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal"
    Android:padding="10dp"
    Android:background="#E1E1E1"
    Android:weightSum="1" >

    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight=".25"
        Android:text="City" />

    <EditText
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_marginLeft="10dp"
        Android:background="@drawable/rounded_edittext"
        Android:layout_weight=".75" />
</LinearLayout>

rounded_edittext.xml

<?xml version="1.0" encoding="utf-8"?>
<!-- res/drawable/rounded_edittext.xml -->
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:padding="10dp"
    Android:shape="rectangle" >

    <solid Android:color="#FFFFFF" />

    <corners
        Android:bottomLeftRadius="10dp"
        Android:bottomRightRadius="10dp"
        Android:topLeftRadius="10dp"
        Android:topRightRadius="10dp" />

</shape>

カラーコード#2f6699を使用して、以下のようにEditTextテキストボックスの輪郭のような境界線の色を取得します。

enter image description here

これを達成する方法に関するアイデアはありますか?

41
Devrath

rounded_edittext.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="1dp"
        Android:color="#2f6699" />
    <corners 
        Android:radius="10dp"            
        />

</shape>

これは動作するはずです

66
Manishika

enter image description here

上の画像のEditTextの場合、res-> drawableフォルダーに2つのxmlファイルを作成する必要があります。最初は "bg_edittext_focused.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="2dip"
            Android:color="#F6F6F6" />
        <corners Android:radius="2dip" />
        <padding
            Android:bottom="7dip"
            Android:left="7dip"
            Android:right="7dip"
            Android:top="7dip" />
    </shape>

2番目のファイルは "bg_edittext_normal.xml"になり、コード行を貼り付けます

<?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:Android="http://schemas.Android.com/apk/res/Android" >
        <solid Android:color="#F6F6F6" />
        <stroke
            Android:width="2dip"
            Android:color="#F6F6F6" />
        <corners Android:radius="2dip" />
        <padding
            Android:bottom="7dip"
            Android:left="7dip"
            Android:right="7dip"
            Android:top="7dip" />
    </shape>

Res-> drawableフォルダーに、上記のコードを呼び出す「bg_edittext.xml」という名前の別のxmlファイルを作成します。以下のコード行をbg_edittext.xmlに貼り付けます

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:Android="http://schemas.Android.com/apk/res/Android">
    <item Android:drawable="@drawable/bg_edittext_focused" Android:state_focused="true"/>
    <item Android:drawable="@drawable/bg_edittext_normal"/>
</selector>

最後に、res-> layout-> example.xmlファイルで、editTextを作成した場所にbg_edittext.xmlをバックグラウンドとして呼び出します。

   <EditText
    :::::
    :::::  
    Android:background="@drawable/bg_edittext"
    :::::
    :::::
    />
20
Faakhir

Rounded_edittext.xmlで以下のコードを使用します。

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

    <stroke Android:width="2dp"
            Android:color="#2F6699"/>

    <corners Android:radius="3dp" />

    <gradient   Android:startColor="#C8C8C8"
                Android:endColor="#FFFFFF"
                Android:type="linear"
                Android:angle="270"/>
</shape>

Result

1
B.HoucinE

9-patch drawable を使用するか、 Shape drawableを作成します。

0
Chris Feist
Android:background="#E1E1E1" 
// background add in layout
<EditText
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:background="#ffffff">
</EditText>
0
Ankit vadariya

edit_text.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android">
    <solid Android:color="#ffffff" />
    <corners Android:radius="5dp"/>
    <stroke Android:width="2dip" Android:color="@color/button_color_submit" />
</shape>

ここで使用

<EditText
 -----
 ------
 Android:background="@drawable/edit_text.xml"
/>
0
Nilesh Panchal