Рисованные ресурсы не отображаются с помощью кнопки - PullRequest
0 голосов
/ 05 октября 2011

Я пытаюсь следовать учебнику, расположенному по адресу http://www.dibbus.com/2011/02/gradient-buttons-for-android/,, однако я не получаю ожидаемого результата.Все компилируется нормально, однако, когда я запускаю его, я получаю кнопку без каких-либо цветов, градиентов или даже границ (так что на самом деле все, что я вижу, это просто текст кнопки).Сама кнопка реагирует на события в порядке.

Чтобы быть совместимым с как можно большим количеством устройств, я использую android: minSdkVersion = "3", это может быть проблемой?

Этоявляется частью моего XML-файла макета:

 <TableRow>
    <Button
        android:id="@+id/button_calculate"
        android:background="@drawable/copy_btn"
        android:layout_column="1"
        android:layout_span="2"
        android:padding="5dp" />
 </TableRow>

Это copy_btn.xml, расположенный внутри рисованных объектов.

 <?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:state_pressed="true" >
         <shape>
             <solid
                 android:color="#70c656" />
             <stroke
                 android:width="1dp"
                 android:color="#53933f" />
             <corners
                 android:radius="3dp" />
             <padding
                 android:left="10dp"
                 android:top="10dp"
                 android:right="10dp"
                 android:bottom="10dp" />
         </shape>
     </item>
     <item>
         <shape>
             <gradient
                 android:startColor="#70c656"
                 android:endColor="#53933f"
                 android:angle="270" />
             <stroke
                 android:width="1dp"
                 android:color="#53933f" />
             <corners
                 android:radius="4dp" />
             <padding
                 android:left="10dp"
                 android:top="10dp"
                 android:right="10dp"
                 android:bottom="10dp" />
         </shape>
     </item>
 </selector>

Спасибо

1 Ответ

0 голосов
/ 05 октября 2011

Работает нормально, если вы добавляете android: layout_height = "wrap_content" android: layout_width = "wrap_content" к вашей кнопке в манифесте Android. minSdkVersion не имеет к этому никакого отношения, поскольку в большинстве случаев они обратно совместимы.

Что означает "(так что на самом деле все, что я вижу, это просто текст кнопки)"? Как вы можете увидеть текст кнопки, если вы не использовали атрибут android: text? Либо есть другая кнопка в вашем приложении, либо вы устанавливаете текст из кода. Проверьте это.

...