在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 鍵格式化後每個屬性配置就會占一行。
2)壓縮節點的聲明方式
這步的目的是將沒有子節點的元素的聲明方式進行壓縮,如將 “<TextView ...></TextView>” 轉化為 “<TextView .../>”。
方法為在XML文件內空白地方點擊鼠標右鍵,選擇 ”Source/Cleanup Document...“,如下圖所示:
之後將彈出如下界面:
勾選“Compress empty element tags”,點擊 OK 按鈕即可。
為了方便,可以為此操作添加一個快捷鍵,進入 Window/Preferences,展開到 General/Keys,如下圖配置自己喜歡的快捷鍵即可: