【问题标题】:Android Studio XML closing tag indentationAndroid Studio XML 结束标签缩进
【发布时间】:2018-01-21 00:35:53
【问题描述】:

我有一个 TextView 定义为

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="@dimen/nav_header_vertical_spacing"
        android:text="Semita"
        android:textAppearance="@style/TextAppearance.AppCompat.Body1"
        />

但我不喜欢与属性在同一缩进级别上的结束标记。当我按下退格键时,我希望它看起来像:

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="@dimen/nav_header_vertical_spacing"
        android:text="Semita"
        android:textAppearance="@style/TextAppearance.AppCompat.Body1"
    />

这是我想要的,我得到了:

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingTop="@dimen/nav_header_vertical_spacing"
    android:text="Semita"
    android:textAppearance="@style/TextAppearance.AppCompat.Body1"/>

/&gt; 与属性处于同一级别。我该如何改变这种行为?

【问题讨论】:

    标签: android xml android-studio intellij-idea


    【解决方案1】:

    转到设置 -> 编辑器 -> 代码样式 -> XML 并选择 Android 选项卡 在布局文件部分选中“在最后一个属性后插入换行符”

    【讨论】:

      【解决方案2】:

      Settings -> Editor -> Code Style -> XML
      

      用于 xml 格式和缩进

      但您应该为此使用节点开始和完整结束标记

      没有选项可以使用当前 ide 选项将短结束节点标记移动到新行,而是使用

      // node 
      
      <tag attr="val"            //  starting tag
           name="alalala">      
          i'm body               //  tag body  
      </tag>                     //  closing tag
      

      或通过功能请求在此处发布您的问题

      https://youtrack.jetbrains.com/issues

      【讨论】:

      • 你能指出我会使用的选项吗?我知道去那里看看,我已经尝试了所有这些选项,但没有一个能达到我想要的效果。
      【解决方案3】:

      自动缩进 如果您已经有结束标签,只需按“Ctrl+Alt+I”。这将自动缩进您突出显示的任何块。

      【讨论】:

        【解决方案4】:

        虽然鲍勃的回答应该可以解决您的问题。您应该考虑采用这种格式:

        <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingTop="@dimen/nav_header_vertical_spacing"
                android:text="Semita"
                android:textAppearance="@style/TextAppearance.AppCompat.Body1">
        </TextView>
        

        【讨论】:

          【解决方案5】:

          如果您使用的是 Mac,请将光标放在 /&gt; 之前并按 Shift + Tab

          按 Tab 会增加 4 个空格,按 Shift + Tab 会向后移动 4 个空格。

          【讨论】:

          • 我必须对每个标签都这样做吗?我正在寻找一个专门的选项,以便可以将其应用于我的所有 XML 文件。
          • 首选项 > 编辑器 > 代码样式 > XML > 制表符和空格 > 继续缩进中有一个选项。如果您将继续缩进的值更改为 0,则当您按下回车键时,您将不会在结束标记之前获得空格。但不利的一面是,您不会在开始时获得 android 属性的缩进。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-08-11
          • 1970-01-01
          • 2012-05-21
          • 2019-06-15
          • 1970-01-01
          • 2014-09-15
          • 1970-01-01
          相关资源
          最近更新 更多