提升Android 開發速度系列 (4) File Template
File Template 指的是檔案樣板。與Live Template的差異是,Live Template是新增程式碼片段,而File Template是新增一個客制的檔案。所以不一定只有Java或Kotlin的程式碼檔案,也可以有layout.xml的檔案,甚至圖片等等皆可。
在Android Studio 我們常用的新增Empty activity。這其實就是一個File Template,當你輸入Activity Name,除了產生Activity 檔案,也會產生一個activity_main.xml。還可以設定要不要設定為Launcher Activity等。
Preferences -> Editor -> File and Code Templates。這裡可以看到AndroidStudio 提供了不少樣板。
除了AndroidStudio提供的,我們還可以客制自已的File Template
AndroidStudio的這些Template 存放在以下路徑。如果要新增就把編輯好的File Template放進資料夾,再重啟Android Studio就可以了。
Windows 路徑
{ANDROID_STUDIO_LOCATION}/plugins/android/lib/templates/other/
Mac 路徑
/Applications/Android Studio.app/Contents/plugins/android/lib/templates/other/
找到資料夾後,可以看到光是activities就有不少的Template
我們就從EmptyActivity Copy出一份來修改成MVP Activity
這個產生MVP的File Template,我們想要一次產生如下的4個檔案Activity、Contract、Presenter、layout.xml
File Template 用起來會像這樣,輸入MVP Name,一次產生MVP的結構,也就是Activity、Contract、Presenter
檔案結構
Template.xml 定義基本欄位,包含在新增時,可以輸入的欄位。
第1個參數要使用者使入MVP名稱,用這個名稱來產生之後的Activity、Presenter、Contract。
recipe.xml
在這個檔案定義Template產生的檔案清單
Activity的樣板來源(from)及產生的檔名位置(to)
Contract的樣板來源(from)及產生的檔名位置(to)
Presenter 的樣板來源(from)及產生的檔名位置(to)
app_package
app_package裡面放的是樣板的檔案
Contract,${}裡表示為參數名稱。
Activity
Presenter
把完成後的Template 放到路徑:
/Applications/Android Studio.app/Contents/plugins/android/lib/templates/other/
重新啟動Android Studio,新增Activity就可以看到囉
程式碼下載:https://github.com/evanchen76/MVPEmptyActivity
下一篇:Vim
出版書:
Android TDD 測試驅動開發:從 UnitTest、TDD 到 DevOps 實踐
線上課程:
Android 動畫入門到進階
Android UI 進階實戰(Material Design Component)