Androidレイアウトxmlのコメント


144

レイアウトXMLファイルにコメントを入力したいのですが、どうすればよいですか?

回答:


252

他の人が言ったように、XMLでのコメントはこのようなものです

<!-- this is a comment -->

それらは複数の行にまたがることができることに注意してください

<!--
    This is a comment
    on multiple lines
-->

ただし、入れ子にすることはできません

<!-- This <!-- is a comment --> This is not -->

また、タグ内では使用できません

<EditText <!--This is not valid--> android:layout_width="fill_parent" />

3
また、コメント内にダブルダッシュを
含める

Eclipseを使用している場合は、XMLファイルを開き、カーソルをコメントの場所に置きます。トップメニューの[ソース]-> [ブロックコメントの追加]から選択します。また、「ctrl + shft + /」(つまり、CtrlキーとShiftキーを押しながら、スラッシュキーを押します)。カーソルが真ん中にある状態でコメントコードが作成されるので、入力を開始できます。
LeBeau

7
>また、タグ内では使用できません。本当に残念です。
linuxjava

38

World Wide Web Consortium(W3C)は実際にコメントインターフェイスを定義しました。定義は言う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

詳細については、developer.android.comサイトをご覧ください。

したがって、開始タグと終了タグの間にコメントを追加するだけです。Eclipse IDEでは、単にタイプ<!--するだけでコメントが自動補完されます。その後、コメントテキストをその間に追加できます。

例えば:

<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>

特に言及する目的はin between、タグ内では使用できないためです。

例えば:

<TextView 
    android:text="@string/game_title"
    <!-- This is a comment -->
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"/>

間違っており、次のエラーが発生します

 Element type "TextView" must be followed by either attribute specifications, ">" or "/>".

1
注:タグ内にコメントはありません。これが選択された答えになるはずです
Eslam Sameh Ahmed

1
Android Studioチームに拡張機能を提出しました。データバインディングを使用していて、データバインディングロジックを記述したXMLの行にコメントを付ける場合、どこか他の場所にコメントを付ける必要があります。これは不可能ではなく、私たち(開発者)が使用できるようにする必要があります。
Chapz 2017


10

それを行うには2つの方法があります

  1. でコメントを開始"<!--"し、「」でコメントを終了します-->"

    <!-- my comment goes here -->

  2. コメントする部分を強調表示し、CTRL + SHIFT + /を押します。


9

ctrl + shift + / コードにコメントを付けることができます。

<!--    
     <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"/>-->


4

タグ可能内のコメント

コメント/ドキュメント化の目的で使用できるカスタム属性を作成することが可能です。

以下の例では、documentation:infoコメント値の例とともに属性が定義されています。

<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>

この場合、documentation.mycompany.comは新しいカスタムXML名前空間(のdocumentation)の単なる定義であり、したがって一意のURI文字列であることに注意してください。一意であれば、何でもかまいません。のdocumentation右側にあるものxmlns:は何でもかまいません。これandroid:は、XML名前空間を定義して使用するのと同じように機能します。

この形式を使用すると、説明値とともにdocumentation:infodocumentation:translation_notesなどの属性をいくつでも作成できます。形式は、XML属性と同じです。

要約すれば:

  • xmls:my_new_namespaceXMLレイアウトファイルのルート(最上位)XML要素に属性を追加します。その値を一意の文字列に設定します
  • ファイル内の子XML要素の下で、新しい名前空間と次の単語を使用して、コンパイル時に無視されるコメントタグを定義します。 <TextView my_new_namespace:my_new_doc_property="description" />

1
これらの属性はビルドプロセス中に破棄されず、代わりに結果のAPK内に保存されることに注意してください。tools:代わりに、破棄される特別な名前空間の使用を検討してください。(この回答が投稿されたときにはおそらく存在していませんでしたが、このページは新しい視聴者を獲得し続けています。)
j__m

@j__mこれは良い点です。私は、ProGuardがこれを自動的に削除できるのか、それとも少しの設定で削除できるのか調べていません...
CJBS

4

コメントを付けたい場合は、Android Studio単に押してください:

Ctrl+ /Windows / Linuxの場合

Cmd+ /Macの場合。

これは、などのXMLファイルでも、などのstrings.xmlコードファイルでも機能しますMainActivity.java


3

クリック

Ctrl + Shift + /

コメントを書いてください


0

Ctrl + shift + /およびShift + /を1行押してコメントを追加することもできます。


0

信じられないことに、2019年のAndroid Studio 3.3では(正確なバージョンはわかりませんが、少なくとも3.3)、xmlにダブルスラッシュコメントを使用することが可能です。

ただし、XMLでダブルスラッシュコメントを使用すると、IDEは警告を表示します。

<?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: ...
CoolMind

-2

フェデリコカロカのメモから:

また、タグ内では使用できません

手段; ファイルの上部または下部にコメントを配置する必要があります-コメントを追加するすべての場所は、少なくとも最上位のレイアウトタグ内にあります


9
これを意味するものではありません。ファイルの途中のどこかに完全にコメントを付けることができます。他のタグの間にある必要があります。
Alex Che

具体的には、要素nの終了タグ、コメント、要素n + 1の開始タグの順序である必要があります。
ban-geoengineering
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.