2012-12-14 3 views
0

У меня есть простой селектор, который имеет выбранное состояние, поэтому я могу установитьSelected (true) на моей Button, и он показывает, что он будет выбран. Я создаю объект типа ActionBar. Он хорошо работает на некоторых устройствах Android (планшет Nexus) (v4.1.2), но на Samsung Galaxy S2 (v2.3.6) он скрывает текст кнопки, когда я вызываю состояние setSeletcted (true). Кто-нибудь знает, почему это может произойти?Вызов выбранного состояния на кнопке делает текст исчезающим

My * button_tab_selected * и * button_tab * Ресурсы изображения png - это 47x47 9 патчей.

drawable_tabcontrolbutton.xml

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

Компоновка Код

<Button 
    android:id="@+id/button_draws" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" 
    android:background="@drawable/drawable_tabcontrolbutton" 
    android:padding="0dp" 
    android:text="DRAWS" 
    android:textSize="18sp" /> 

<Button 
    android:id="@+id/button_results" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" 
    android:background="@drawable/drawable_tabcontrolbutton" 
    android:padding="0dp" 
    android:text="RESULTS" 
    android:textSize="18sp" /> 

Java Code

final Button button_draws = (Button) findViewById(com.tattsbet.android.R.id.button_draws); 
    button_draws.setSelected(true); 
    final Button button_results = (Button) findViewById(com.tattsbet.android.R.id.button_results); 

    button_draws.setOnClickListener(new OnClickListener() 
    { 

     @Override 
     public void onClick(View v) 
     { 
      button_draws.setSelected(true); 
      button_results.setSelected(false); 
      drawsSelected(); 
     } 
    }); 
    button_results.setOnClickListener(new OnClickListener() 
    { 

     @Override 
     public void onClick(View v) 
     { 
      button_results.setSelected(true); 
      button_draws.setSelected(false); 
      resultsSelected(); 
     } 
    }); 
+0

Возможно, это проблема стиля, вы можете точно определить цвет и попробовать. может быть, белый фон/белый текст. – Mert

+0

Ничего себе, что исправил его @Mert. Я просто добавил атрибут textColor в свой

+1

Я рад, что помог – Mert

ответ

1

It может быть проблемой стиля кнопки. Вы должны определить точный цвет, используя атрибут textColor в вашем xml. Белым фоном/белым текстом может быть причина. Стили могут быть разными телефонами по телефону, от версии до версии.

Полезно четко определить все свойства стиля, чтобы избежать подобных проблем.

+0

Это исправлено - приветствия. –