2014-03-13 66 views
0

我試圖在點擊按鈕時按下按鈕。但是當我嘗試將該代碼實現到我的xml文件中時,我事先已經完成了四捨五入的按鈕功能。我將xml文件鏈接到按鈕上的android:background命令。在eclipse中製作圓形按鈕

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@color/light_orange" android:state_pressed="true"/> 
    <item android:drawable="@color/orange"/> 
<shape 
android:shape="rectangle" android:padding="10dp"> 

<solid android:color="#FFFF00"/> 
    <corners 
    android:bottomRightRadius="10dp" 
    android:bottomLeftRadius="10dp" 
    android:topLeftRadius="10dp" 
    android:topRightRadius="10dp"/> 
    </shape> 

</selector> 

回答

0

你需要總共有三個xmls。 一個與你的'正常'圓形,一個與你的圓形不同的顏色,或者你想表明它被按下。而在去年一樣,你在你的例子,在那裏你引用另外兩個可繪有一個選擇,按照國家...

大致類似的東西:

1- button_not_pressed.xml

<solid android:color="#FFFFFF00"/> 
    <corners 
    android:bottomRightRadius="10dp" 
    android:bottomLeftRadius="10dp" 
    android:topLeftRadius="10dp" 
    android:topRightRadius="10dp"/> 
    </shape> 

2- button_pressed

<solid android:color="#AADDDD00"/> 
    <corners 
    android:bottomRightRadius="10dp" 
    android:bottomLeftRadius="10dp" 
    android:topLeftRadius="10dp" 
    android:topRightRadius="10dp"/> 
    </shape> 

3- stateful_button.xml

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:drawable="@drawable/button_pressed" android:state_pressed="true"/> 
<item android:drawable="@color/button_not_pressed"/> 
</selector> 

然後,您可以簡單地給你的按鈕,繪製stateful_button作爲背景,它會改變顏色,當你按下它...

+0

如果有人能告訴我爲什麼第一次行(開頭標籤)沒有顯示在button_xmls - 部分,請讓我知道。它們在文本中,但是SO代碼格式化讓它們以某種方式吃掉它們...... – jpm