我想知道我是否可以在XML中繪製矩形。 我知道如何以編程方式使用drawRect方法。我可以在XML中繪製矩形嗎?
回答
當然可以,這裏是一個我早些時候:
<?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
android:id="@+id/myRectangleView"
android:layout_width="200dp"
android:layout_height="50dp"
android:background="@drawable/rectangle"/>
最後;您可以將此矩形設置爲任何視圖的背景,但對於ImageView,您可以使用android:src
。這意味着你可以使用矩形作爲ListViews,TextViews等的背景。
怎麼會有人去做它,使顏色可以從android佈局設置我們使<視圖? – kobihudson 2015-12-01 23:50:28
我認爲你不能爲它添加id – 2016-08-16 04:33:36
創建rectangle.xml
使用形狀繪製對象像這樣把您的可繪製文件夾...
<?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>
希望這會幫助你。
非常感謝。它是有益的。 – user1301568 2012-04-13 04:33:41
快速和骯髒的方式:
<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>
- 1. 繪製多個矩形在xml可繪製
- 2. 我可以在繪製之前在Canvas2D中定義一個矩形嗎?
- 3. 我可以動態地在EditText中繪製帶有文本的矩形嗎?
- 4. 我可以直接在GtkWindow中繪製一個沒有GtkDrawingArea的矩形嗎?
- 5. 我可以將可繪製的int ID存儲在XML中嗎?
- 6. 繪製可逆矩形
- 7. 在iOS中繪製矩形
- 8. 在MKMapView中繪製矩形
- 9. 在Java中繪製矩形
- 10. 繪製矩形在Java中
- 11. 在c中繪製矩形#
- 12. 在.NET中繪製矩形
- 13. 在ViewPager中繪製矩形
- 14. 繪製矩形
- 15. 在矩形內繪製等距矩形
- 16. 在Android中使用XML形狀設置繪製矩形
- 17. 繪製矩形,然後繪製縮小矩形在先前的矩形內
- 18. 我可以在平面three.js臉上繪製2D圖形嗎?
- 19. 我可以繪製形狀像圓,矩形,線等的drawRect方法以外
- 20. 可可:NSView沒有繪製矩形
- 21. 在AVCaptureVideoPreviewLayer頂部繪製一個矩形,可能嗎?
- 22. Pygame繪製矩形
- 23. Android - 繪製矩形
- 24. 點繪製矩形
- 25. Swift繪製矩形
- 26. 在opengl繪製矩形android
- 27. 在JPanel上繪製矩形
- 28. 問題在繪製矩形
- 29. ontouch在android繪製矩形
- 30. 在ImageVIew上繪製矩形
說XML意味着什麼都沒有,即任何東西...... – ShinTakezou 2012-04-12 13:50:55
使用XML的目的是什麼? drawRect在Canvas上工作,通常用於創建自定義視圖。 – noob 2012-04-12 13:52:22
我完全用@Creator來描述,我們很少使用Canvas,除非它是爲了更復雜一點。由於在一個位置定義了屬性,因此XML版本可以輕鬆地爲整個應用程序更改特定UI元素的背景。 – 2012-04-12 14:16:06