Eigene ButtonBackgrounds via xml...

enyomo

enyomo

Neues Mitglied
0
Guten Morgen zusammen!
Ich habe mir das Beispiel der individuellen Gestaltung von Buttons - bzw. deren Background - auf der Google-Developer Seite angesehen und versuche das gerade in einem ersten eigenen Programm umzusetzen. Der original Code und die dort befindlichen Bilder funktionieren, auch ist mir die Funktionsweise des Ganzen schlüssig. Jetzt habe ich eigene .png Dateien via VektorZeichen-Programm entwickelt und den Code auf die neuen Namen angepasst um eigen entworfene Buttons darstellen zu können. Aber der Reihe nach:

Das ist meine "links_button.xml" im Verzeichnis /res/drawable-mdpi/

HTML:
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/links_pressed"
          android:state_pressed="true" />
    <item android:drawable="@drawable/links_focused"
          android:state_focused="true" />
    <item android:drawable="@drawable/links_normal" />
</selector>

Zugriff erfolgt über "buchstaben_view.xml":

HTML:
<Button
        android:id="@+id/new_fragments"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:background="@drawable/links_button"
        android:layout_gravity="center_vertical" />

Die enstprechenden png Grafiken liegen ebenfalls aktuell in einer 50x50-Pixel-Größe im Verzeichnis /res/drawable-mdpi/ und heissen natürlich auch "links_normal.png", "links_focused.png" usw.


Mit der original-Bezeichnung im Google-Beispiel Code, funktioniert die Sache einwandfrei, ändere ich aber nun die Namen meiner xml-Datei und passe sie entsprechend meiner eigenen Buttons an, so kommt folgende Fehlermeldung in Eclipse 3.5, die ich leider nicht deuten kann:

Failed to parse file /home/enyomo/Ubuntu One/workspace-vorschule/vorschule/res/drawable-mdpi/links_button.xml
Details:
org.xmlpull.v1.XmlPullParserException: Binary XML file line #4: <item> tag requires a 'drawable' attribute or child tag defining a drawable

Da die Grafiken defenitiv vorliegen und ich nicht verstehe, was er mit "Failed to parse File..." meint, bitte ich um kurzen Rat.
 
Sieht eigentlich gut aus. Ist der Code den du gepostet hast der vor oder nach der Änderung, wo die Fehlermeldung kommt?
Die Fehlermeldung sagt dir, dass er in dem "Item"-Tag in Zeile 4 das Attribut "drawable" nicht finden kann. Wobei es in deinem Code vorhanden ist
Code:
<item android:drawable="@drawable/links_pressed" <!-- das hier! -->
          android:state_pressed="true" />

Cleane mal dein Projekt (Project -> Clean Project) und schau was er dann sagt...
 
Hi!
Einen "Clean" hab ich bereits durchgeführt, der o.a. Code ist der aktuelle nach der Änderung. Das Original im Google-Code sah so aus:

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

Eigentlich habe ich nur den Dateinamen der Google-XML geändert von "android_button.xml" zu "links_button.xml", meine Grafiken in der passenden Auflösung in das Verzeichnis gelegt, die Dateinamen in der xml geändert und auch den Part
HTML:
android:background="@drawable/android_button"
zu
HTML:
android:background="@drawable/links_button"
geändert...
Meine Vermutung zielt auf die Grafiken selbst, allerdings finde ich keine Informationen ob/wie die original png´s von meinen selbst erstellten abweichen könnten?
 
Hier noch eine kleine "Bestätigung" das alles vorhanden ist ^^

Bildschirmfoto.png

Bildschirmfoto-1.png
 
Nachtrag: Es funktioniert wieder! Ich habe die Grafiken neu gespeichert und die links_button.xml von Hand neu geschrieben. Fehler ist weg - warum auch immer... :sad:
Aber so ist das ja nun mal beim coden... ^^ Vielen Dank trotzdem!
 

Ähnliche Themen

FabianDev
Antworten
5
Aufrufe
549
swa00
swa00
F
  • Fischi84
Antworten
2
Aufrufe
1.914
Fischi84
F
R
Antworten
3
Aufrufe
1.614
Ritartet
R
Zurück
Oben Unten