2013-02-12 91 views
0

我想將形狀顏色設置爲圖像,但未能這樣做。也許任何人都可以告訴我如何以適當的方式做到這一點?我使用這個形狀作爲我的按鈕背景。形狀背景作爲圖像

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

    android:shape="rectangle"> 
    
   <corners android:bottomRightRadius="7dp" 
       android:bottomLeftRadius="7dp" 
       android:topLeftRadius="7dp" 
       android:topRightRadius="7dp"/> 
    
       <stroke 
       android:width="0.5dp" 
       android:color="#ff0000" /> 
        
       <solid android:color= "@drawable/tableback1" /> 
</shape> 

回答

1

這是不可能的你提出的問題。

根據此處的文檔:http://developer.android.com/guide/topics/resources/drawable-resource.html#Shapesolid.color屬性值必須是顏色,而不是可繪製的。這種顏色被用作整個形狀的填充。你傳遞這是在這裏看到一個drawable

<solid android:color= "@drawable/tableback1" /> 

相反,它應該是沿着線的東西:

<solid android:color="@color/background_color1" /> 

或者乾脆:

<solid android:color="#ffff0000" /> 
+0

問題是我有很好的透明顏色在「tableback」圖像。我可以像你剛剛說的那樣設置相同的顏色,但如何讓它透明讓我們說50個前綴? – Datenshi 2013-02-12 12:24:13

+0

將alpha值指定爲第一個組件。例如,這是100%紅色:'#ffff0000',這是50%紅色:'#80ff0000',這是25%藍色:'#4000ff00',依此類推。你可以在這裏找到更多的例子和參考:http://developer.android.com/guide/topics/resources/more-resources.html#Color – andr 2013-02-12 12:26:37

+0

太好了。這就是我一直在尋找的..我會標記你的答案被接受,因爲它回答我的問題,即使我們真正的答案我看着謊言在評論:)謝謝你的幫助。 – Datenshi 2013-02-12 12:34:45

2

正如你可以設置起點顏色的兩個值,例如總共8位數字的阿爾法

#00ffaa44 // here is the fully transparent 

#88ffaa44 // semi transparent 

#ffffaa44 // fully opaque 

你可以保持你的顏色與alpha值根據您的要求