web-dev-qa-db-ja.com

XMLで四角形を描画できますか?

XMLで四角形を描画できるかどうか疑問に思います。プログラムでdrawRectメソッドを使用して描画する方法を知っています。

106
user1301568

はい、できます。ここに、以前に作成したものを示します。

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:id="@+id/listview_background_shape">
    <stroke Android:width="2dp" Android:color="#ff207d94" />
    <padding Android:left="2dp"
        Android:top="2dp"
        Android:right="2dp"
        Android:bottom="2dp" />
    <corners Android:radius="5dp" />
    <solid Android:color="#ffffffff" />
</shape>

Drawableフォルダー内に新しいXMLファイルを作成し、上記のコードを追加して、rectangle.xmlとして保存できます。

レイアウト内で使用するには、Android:background属性を新しいドローアブルシェイプに設定します。定義した形状には寸法がないため、レイアウトで定義されているビューの寸法が使用されます。

したがって、すべてをまとめると:

<View
    Android:id="@+id/myRectangleView"
    Android:layout_width="200dp"
    Android:layout_height="50dp"
    Android:background="@drawable/rectangle"/>

最後に; ImageViewの場合はAndroid:srcを使用しますが、この長方形を任意のビューの背景に設定できます。これは、長方形をリストビュー、テキストビューなどの背景として使用できることを意味します。

200
Graham Smith

このようにShape Drawableを使用してrectangle.xmlを作成しますDrawable Folder ...

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:shape="rectangle">
   <solid Android:color="@Android:color/transparent"/>
   <corners Android:radius="12px"/> 
   <stroke  Android:width="2dip" Android:color="#000000"/>  
</shape>

ImageViewに入れます

<ImageView 
Android:id="@+id/rectimage" 
Android:layout_height="150dp" 
Android:layout_width="150dp" 
Android:src="@drawable/rectangle">
</ImageView>

これがお役に立てば幸いです。

31
N.Droid

早くて汚い方法:

<View
    Android:id="@+id/colored_bar"
    Android:layout_width="48dp"
    Android:layout_height="3dp"
    Android:background="@color/bar_red" />
17
Pimentoso

これを試して

                <TableRow
                    Android:layout_width="match_parent"
                    Android:layout_marginTop="5dp"
                    Android:layout_height="wrap_content">

                    <View
                        Android:layout_width="15dp"
                        Android:layout_height="15dp"
                        Android:background="#3fe1fa" />

                    <TextView
                        Android:textSize="12dp"
                        Android:paddingLeft="10dp"
                        Android:layout_width="wrap_content"
                        Android:layout_height="wrap_content"
                        Android:textAppearance="?android:attr/textAppearanceMedium"
                        Android:text="1700 Market Street"
                        Android:id="@+id/textView8" />
                </TableRow>

出力

enter image description here

7
A.G.THAMAYS

このコードを使用

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

<corners
    Android:bottomLeftRadius="5dp"
    Android:bottomRightRadius="5dp"
    Android:radius="0.1dp"
    Android:topLeftRadius="5dp"
    Android:topRightRadius="5dp" />

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

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

</shape>