XMLで四角形を描画できるかどうか疑問に思います。プログラムでdrawRectメソッドを使用して描画する方法を知っています。
はい、できます。ここに、以前に作成したものを示します。
<?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
を使用しますが、この長方形を任意のビューの背景に設定できます。これは、長方形をリストビュー、テキストビューなどの背景として使用できることを意味します。
このように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>
これがお役に立てば幸いです。
早くて汚い方法:
<View
Android:id="@+id/colored_bar"
Android:layout_width="48dp"
Android:layout_height="3dp"
Android:background="@color/bar_red" />
これを試して
<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>
出力
このコードを使用
<?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>