2013-11-02 9 views
9

ja, ich habe nachgeschlagen!Kommentare im Layout XML funktioniert nicht

<!-- comment --> 

scheint die richtige Wahl zu sein, aber ich habe einen Fehler in Android-Studio Gradle: Fehler XML-Analyse: nicht wohlgeformt (ungültige Token)

, wenn ich tun, um dieses

<ImageButton 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    <!-- android:background="?android:attr/selectableItemBackground" --> 
    android:id="@+id/imageButton" 
    android:layout_alignParentTop="true" 
    android:src="@drawable/gfx_select_medium" 
    android:layout_marginRight="22dp"/> 

jede hilfe ist willkommen, thx!

+0

Bewegung außerhalb des Image und versuchen – Raghunandan

+0

das gesamte XML Bitte posten, vielleicht der Fehler in Ihr Code und nicht der Kommentar. – NitroNbg

+0

@NitroNbg vertrau mir. Sie können keinen Kommentar in ein Tag xml schreiben – Blackbelt

Antwort

8

XML-Kommentare können nicht in Markup-Tags eingefügt werden. Verschieben Sie den Kommentar beispielsweise über oder unter Ihrem ImageButton Tag.

Hier ist die spec Referenz, mit Betonung hinzugefügt:

Kommentare in einem Dokument außerhalb andere Markup

beliebigen Stellen Wo markup wie folgt definiert ist:

Markup hat die Form von Start-Tags , End-Tags, Tags für leere Elemente, Entitätsreferenzen, Zeichenreferenzen, Kommentare, CDATA-Abschnitts-Trennzeichen, Dokumenttyp-Deklarationen, Verarbeitungsanweisungen, XML-Deklarationen, Textdeklarationen und alle Leerzeichen auf der obersten Ebene der Dokument-Entität (das heißt, außerhalb des Dokumentelements und nicht innerhalb eines anderen Markups)

+0

ja, aber warum ist das nicht möglich? – Blackbelt

4

Es ist nicht nur AS. Sie müssen Ihre Kommentare außerhalb des End-Tag legen </> so etwas wie

<ImageButton 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:id="@+id/imageButton" 
android:layout_alignParentTop="true" 
android:src="@drawable/gfx_select_medium" 
android:layout_marginRight="22dp"/>  
<!-- android:background="?android:attr/selectableItemBackground" --> 

Siehe this link und this one von W3 über XML-Kommentare. Kurz gesagt, heißt es

[Definition: Kommentare können überall in einem Dokument außerhalb anderer Markup erscheinen;

Mitteilung

außerhalb anderem Markup

aus dem ersten Link und

[Definition: Markup die Form von Start-Tags erfolgt, End-Tags , ...

aus dem zweiten Link

+0

so irgendwo innerhalb einer Layout-Datei funktioniert nicht, weil alles dann in der ersten Ebene ist. das ist nicht viel nützen! – steveh

+0

@steveh nein, sie ** können ** innerhalb einer Layout-Datei sein, wie in den Antworten angegeben. Sie können nicht innerhalb des Start-/End-Tags für die anderen Knoten sein. Aber sie ** können ** innerhalb des Start-/End-Tags des Wurzelelements sein. – codeMagic

2

Sie sollten wissen, dass die Kommentare in einer XML-Datei Knoten XmlComment Typ betrachtet werden, so dass, wenn Sie die XML-Datei diese Knoten laden gehen erhalten geladen und es ist an Ihnen, sie zu vermeiden oder filtern Sie sie, wenn Sie den geladenen Inhalt analysieren.

So, Dies wird das richtige Format sein,

<ImageButton 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:id="@+id/imageButton" 
android:layout_alignParentTop="true" 
android:src="@drawable/gfx_select_medium" 
android:layout_marginRight="22dp"/>  
<!-- android:background="?android:attr/selectableItemBackground" --> 

Oder können Sie diese link sehen ..

Verwandte Themen