Chciałbym wprowadzić kilka komentarzy do plików XML układu, jak mam to zrobić?
Chciałbym wprowadzić kilka komentarzy do plików XML układu, jak mam to zrobić?
Odpowiedzi:
Jak powiedział inny, komentarz w XML wygląda tak
<!-- this is a comment -->
Zauważ, że mogą obejmować wiele linii
<!--
This is a comment
on multiple lines
-->
Ale nie można ich zagnieżdżać
<!-- This <!-- is a comment --> This is not -->
Nie możesz ich również używać wewnątrz tagów
<EditText <!--This is not valid--> android:layout_width="fill_parent" />
Konsorcjum World Wide Web Consortium (W3C) faktycznie zdefiniowało interfejs komentarzy. Definicja mówi all the characters between the starting ' <!--' and ending '-->' form a part of comment content and no lexical check is done on the content of a comment
.
Więcej szczegółów jest dostępnych w witrynie developer.android.com .
Możesz więc po prostu dodać swój komentarz między dowolnym znacznikiem początkowym i końcowym. W Eclipse IDE zwykłe wpisanie <!--
spowoduje automatyczne uzupełnienie komentarza. Następnie możesz dodać tekst komentarza pomiędzy.
Na przykład:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context=".TicTacToe" >
<!-- This is a comment -->
</LinearLayout>
Celem konkretnej wzmianki in between
jest to, że nie można jej używać wewnątrz tagu.
Na przykład:
<TextView
android:text="@string/game_title"
<!-- This is a comment -->
android:layout_height="wrap_content"
android:layout_width="fill_parent"/>
jest błędne i spowoduje następujący błąd
Element type "TextView" must be followed by either attribute specifications, ">" or "/>".
ctrl + shift + / Możesz skomentować kod.
<!--
<View
android:layout_marginTop="@dimen/d10dp"
android:id="@+id/view1"
android:layout_below="@+id/tv_change_password"
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="#c0c0c0"/>-->
<!-- comment here -->
Możliwe jest tworzenie niestandardowych atrybutów, które mogą być używane do celów komentowania / dokumentacji.
W poniższym przykładzie documentation:info
zdefiniowano atrybut z przykładową wartością komentarza:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:documentation="documentation.mycompany.com"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/relLayoutID"
documentation:info="This is an example comment" >
<TextView
documentation:purpose="Instructions label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click here to begin."
android:id="@+id/tvMyLabel"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
documentation:info="Another example comment"
documentation:translation_notes="This control should use the fewest characters possible, as space is limited"
/>
</RelativeLayout>
Zauważ, że w tym przypadku documentation.mycompany.com
jest to tylko definicja nowej niestandardowej przestrzeni nazw XML (of documentation
), a zatem jest to tylko unikalny ciąg URI - może to być wszystko, o ile jest unikalny. Po documentation
prawej stronie xmlns:
może też być dowolne słowo - działa to tak samo, jak android:
definiowana i używana jest przestrzeń nazw XML.
Korzystanie z tego formatu, dowolną liczbę atrybutów mogą być tworzone, na przykład documentation:info
, documentation:translation_notes
itd., Wraz z wartością opis, format jest taki sam jak każdy atrybut XML.
W podsumowaniu:
xmls:my_new_namespace
atrybut do głównego (najwyższego) elementu XML w pliku układu XML. Ustaw jego wartość na unikalny ciąg<TextView my_new_namespace:my_new_doc_property="description" />
tools:
Zamiast tego rozważ użycie specjalnej przestrzeni nazw, która zostanie odrzucona. (Prawdopodobnie nie istniał, kiedy ta odpowiedź została opublikowana, ale ta strona wciąż
Jeśli chcesz skomentować, Android Studio
po prostu naciśnij:
Ctrl+ /w systemie Windows / Linux
Cmd+ /na Macu.
Działa to w plikach XML, takich jak strings.xml
pliki z kodem, takie jak MainActivity.java
.
możesz również dodać komentarz, naciskając Ctrl + Shift + / i Shift + / dla jednej linii.
Niewiarygodne, że w 2019 roku z Androidem Studio 3.3 (nie znam dokładnej wersji, przynajmniej 3.3) można zastosować komentarz z podwójnym ukośnikiem do xml.
Ale jeśli użyjesz komentarza z podwójnym ukośnikiem w xml, IDE wyświetli ostrzeżenie.
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
// this works
/* this works too */
/*
multi line comment
multi line comment
*/
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World! yeah"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
Unexpected text found in layout file: ...
.
Z notatki Federico Culloca:
Nie możesz ich również używać wewnątrz tagów
Znaczy; musisz umieścić komentarz na górze lub na dole pliku - wszystkie miejsca, w których naprawdę chcesz dodać komentarze, znajdują się przynajmniej wewnątrz znacznika układu najwyższego poziomu