我想擴展線性佈局類,並改變它的一些屬性。 我想改變的屬性之一是背景。擴展LinearLayout
屬性背景將設置爲某些東西,如果此背景比視圖的高度短,我希望它被垂直重複。
如果在構造函數中我使用getBackground()我得到設置爲視圖的背景。 但是,當我試圖平鋪它時,它顯示出很好的一次,但是它應該重複的所有位置,它只是被污染了。
我如何獲得視圖的ResourceID背景而不是背景圖片,所以我可以在沒有「超級」的情況下處理它。方法被首先調用?
我想擴展線性佈局類,並改變它的一些屬性。 我想改變的屬性之一是背景。擴展LinearLayout
屬性背景將設置爲某些東西,如果此背景比視圖的高度短,我希望它被垂直重複。
如果在構造函數中我使用getBackground()我得到設置爲視圖的背景。 但是,當我試圖平鋪它時,它顯示出很好的一次,但是它應該重複的所有位置,它只是被污染了。
我如何獲得視圖的ResourceID背景而不是背景圖片,所以我可以在沒有「超級」的情況下處理它。方法被首先調用?
如果您擴展LinearLayout的唯一原因是設置重複背景或非重複背景,則不需要擴展LinearLayout。
您可以從一個excisting繪製對象使用繪製的XML文件重複的背景:
<?xml version="1.0" encoding="utf-8"?>
<bitmap
xmlns:android="http://schemas.android.com/apk/res/android"
android:tileMode="repeat"
android:src="@drawable/your_drawable"/>
根據您的「狀態」,你可以在的LinearLayout的背景設置爲你選擇。
問題是我想僅垂直重複背景,而不是水平方向,似乎我的背景寬度爲540和719(2個不同的圖像相同) 並且我在屏幕的右側,圖像的一些重複,我不想要的,我想要圖像水平拉伸和垂直平鋪。 –
@LenaBru所以擴展Drawable,你可以在draw()方法中做任何你想做的事情 – pskink
但是我會在我的繪圖方法中寫什麼? –
發佈可能的示例代碼,以便有人可以查看它並可以建議你! –
您可以在AttributeSet參數 – Blackbelt
中找到id,您不必擴展LinearLayout,您需要創建一個自定義Drawable:class RepeatDrawable extends Drawable – pskink