Невозможно разрешить рисование в атрибуте "src" - PullRequest
4 голосов
/ 24 февраля 2011

У меня проблема при попытке загрузить различные изображения в кнопку изображения с помощью файла XML в папке drawable-mdpi. Он работал для одной кнопки, но не работает для другой. Код работает для второй кнопки изображения, но не для первой, я получаю сообщение об ошибке,

"main.xml: невозможно разрешить рисование "C: ... рабочая область \ AndroidAlarm \ res \ drawable-mdpi \ keyEntry.xml" в атрибут "src".

Я сделал то же самое в первом изображении, что и во втором. XML-файл для второй кнопки (рабочей) выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
 <item android:state_pressed="true"
       android:drawable="@drawable/events_pressed" /> <!-- pressed -->
 <item android:drawable="@drawable/events" /> <!-- default -->
</selector>

и для того, кто не работает, это выглядит так:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
 <item android:state_pressed="true"
       android:drawable="@drawable/key_entry_pressed" /> <!-- pressed -->
 <item android:drawable="@drawable/key_entry" /> <!-- default -->
 </selector>

Единственное различие между ними состоит в том, что изображения передаются. Все изображения находятся в папке drawabl-mdpi. Я не могу понять, почему это работает для второй кнопки изображения, но не для первой. XML-код для двух кнопок выглядит следующим образом:

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1">
            <ImageButton
                android:id="@+id/imagebutton1"
                android:src="@drawable/keyEntry"
                android:background = "@android:color/transparent"               
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:scaleType = "fitXY"
                android:layout_marginTop = "50px"
                android:layout_marginLeft = "40px"
                android:layout_marginRight = "20px"
                android:layout_marginBottom = "50px"
                android:layout_weight="1"/>
            <ImageButton 
                android:layout_marginTop="50px"
                android:layout_width="wrap_content"
                android:layout_marginRight="40px"
                android:id="@+id/imagebutton2"
                android:layout_weight="1" 
                android:src="@drawable/events" 
                android:layout_height="wrap_content" 
                android:background="@android:color/transparent" 
                android:layout_marginLeft="20px" 
                android:layout_marginBottom="50px" 
                android:scaleType="fitXY">
             </ImageButton>
         </LinearLayout>  

Заранее спасибо!

1 Ответ

1 голос
/ 19 мая 2011

Ресурсы не могут содержать заглавные буквы:

    android:src="@drawable/keyEntry"

У вас должна быть ошибка с жалобой на имя ресурса:

    Invalid file name: must contain only [a-z0-9_.]
...