Eclipse中Android项目XML文件的格式化配置
在Eclipse中使用ADT开发Android很方便,但也有些不如意的地方,如XML文件的格式化效果就很不理想。默认情况下,使用ADT的可视化界面布局,自动生成的xml文件中,一个控件的配置全动挤到一行上(效果如下所示),阅读、修改起来都很不方便。<?xml version="1.0" encoding="utf-8"?>
<LinearLayout ...>
<TextView android:id="@+id/TextView01" android:layout_width="wrap_content" ...></TextView>
</LinearLayout>
而我希望最佳的格式化效果如下,控件的每个属性配置占一行方便阅读修改,没有子元素的控件直接使用 /> 关闭:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/TextView01"
android:text="Some Content"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
为了达到上述的格式化效果,需要修改Eclipse的一些配置及进行一些额外的操作:
1)修改Eclipse的XML格式化配置
这一步的配置是使格式化的效果为控件的每个属性配置占一行。进入 Window/Preferences,展开到 XML/XML Files/Editor,
勾选 “Split multiple attributes each on a new line” 即可,如下图所示:
经此配置后,每次使用快捷键 Ctrl+Shift+F 键格式化后每个属性配置就会占一行。
选中
Split multiple attributes each on a new line
这样标签的每个属性都单独一行显示。
像这样的效果:
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="37px"
android:text="@string/text1"
android:textSize="18sp"
android:layout_x="40px"
android:layout_y="156px"
>
通过以下设置可以达到一个相对理想的效果:
Window -> Preferences -> XML -> Editor -> Formatting :选中
Split multiple attributes each on a new line
这样标签的每个属性都单独一行显示。
2)压缩节点的声明方式
这步的目的是将没有子节点的元素的声明方式进行压缩,如将 “<TextView ...></TextView>” 转化为 “<TextView .../>”。
方法为在XML文件内空白地方点击鼠标右键,选择 ”Source/Cleanup Document...“,如下图所示:
为了方便,可以为此操作添加一个快捷键,进入 Window/Preferences,展开到 General/Keys,如下图配置自己喜欢的快捷键即可:
3)Format android
我们在写Android程序时,总想写的标准一些,google给开发人员在不同的IDE中提供了一些模板,其中包括Eclipse,Xcode,Emacs,Intellij,见源码 froyo_td/development/ide,
3)Format android
我们在写Android程序时,总想写的标准一些,google给开发人员在不同的IDE中提供了一些模板,其中包括Eclipse,Xcode,Emacs,Intellij,见源码 froyo_td/development/ide,
android.importorder //引入模板
android-formatting.xml //格式化模板
配置方法 :
引入模板 :选择Eclipse菜单栏中【window】下的【preferences】,Java->code style->Formatter->Import(android-formatting.xml)
格式化模板 :选择Eclipse菜单栏中【window】下的【preferences】, Java->code style->Organize Imports->Import(android.importorder)