2010-09-08 86 views
0

我想製作一個自定義按鈕,有兩個9patch文件,一個用於正常狀態,一個用於狀態。自定義按鈕已丟失文本

首先我想用一個簡單的9patch背景,結果是罰款:

<Button android:id="@+id/btnTest" 
     android:layout_height="80dip" 
     android:layout_width="135dip" 
     android:text="Test" 
     android:drawableTop="@drawable/imgsomeimage" 
     android:background="@drawable/main_button_background"> 
</Button> 

我得到一個按鈕,一個圖像和文本婁它。與下面

我創建一個新的XML文件(main_menu_button.xml)的main_button_background一切與以下內容

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

    <!-- Focused states --> 
    <item 
     android:state_focused="true" 
     android:state_selected="false" 
     android:state_pressed="false" 
     android:drawable="@drawable/main_button_background_pressed" /> 
    <item 
     android:state_focused="true" 
     android:state_selected="true" 
     android:state_pressed="false" 
     android:drawable="@drawable/main_button_background_pressed" /> 

    <!-- Pressed --> 
    <item 
     android:state_pressed="true" 
     android:drawable="@drawable/main_button_background_pressed" /> 
    </selector>  

按鈕變爲:

<Button android:id="@+id/btnTest" 
     android:layout_height="80dip" 
     android:layout_width="135dip" 
     android:text="Test" 
     android:drawableTop="@drawable/imgsomeimage" 
     android:background="@drawable/main_menu_button"> 

現在文本ISN不顯示,只有背景和imgsomeimage。 我在做什麼錯?

回答

0

問題解決了。按下的背景圖像的大小不同。調整大小作爲正常的背景後,一切正常。

+0

我的9個補丁都是相同的尺寸,當我設置選中(並調用其他狀態)時,我的文本消失:(。 – 2012-12-14 05:29:48