2010-09-08 7 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> 

Я получаю кнопку с изображением и текстом сильфонные его. Все с main_button_background под

создать новый XML-файл (main_menu_button.xml) со следующим содержанием

<?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 't отображается, только фон и imgsomeimage. Что я делаю неправильно?

ответ

0

Проблема решена. Прессованное фоновое изображение имело разный размер. После изменения размера обычного фона все работает нормально.

+0

Мои 9 патчей имеют одинаковые размеры, и мой текст исчезает, когда я устанавливаю выбранное (и вызывается другое состояние) :(. –

Смежные вопросы