ฉันสงสัยว่าฉันสามารถวาดสี่เหลี่ยมผืนผ้าใน XML ได้หรือไม่ ฉันรู้วิธีวาดโดยใช้เมธอด drawRect โดยทางโปรแกรม
ฉันสงสัยว่าฉันสามารถวาดสี่เหลี่ยมผืนผ้าใน 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>
คุณสามารถสร้างไฟล์ XML ใหม่ภายในโฟลเดอร์ที่วาดได้และเพิ่มโค้ดด้านบนจากนั้นบันทึกเป็น rectangle.xml
หากต้องการใช้ภายในเค้าโครงคุณจะต้องตั้งค่าandroid:background
แอตทริบิวต์เป็นรูปร่างที่วาดได้ใหม่ รูปร่างที่เรากำหนดไม่มีมิติใด ๆ ดังนั้นจะใช้ขนาดของ View ที่กำหนดไว้ในเค้าโครง
ดังนั้นรวมทั้งหมดเข้าด้วยกัน:
<View
android:id="@+id/myRectangleView"
android:layout_width="200dp"
android:layout_height="50dp"
android:background="@drawable/rectangle"/>
สุดท้าย; คุณสามารถตั้งค่าให้สี่เหลี่ยมผืนผ้านี้เป็นพื้นหลังของ View ใด ๆ ก็ได้แม้ว่าคุณจะใช้ ImageViews android:src
ก็ตาม ซึ่งหมายความว่าคุณสามารถใช้สี่เหลี่ยมผืนผ้าเป็นพื้นหลังสำหรับ ListViews, TextViews ... ฯลฯ
สร้างrectangle.xml
โดยใช้ Shape Drawable เช่นนี้ใส่ในโฟลเดอร์Drawableของคุณ...
<?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>
สร้างไฟล์ทรัพยากรในรูปวาด
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#3b5998" />
<cornersandroid:radius="15dp"/>