自定義Activity模板

背景:每次創(chuàng)建Activity是都是默認(rèn)繼承AppCompatActivity或Activity,但通常我們都有自己定義的BaseActivity,如果用mvp的話(huà)還需實(shí)現(xiàn)接口等。創(chuàng)建的布局也是默認(rèn)使用ConstraintLayout,所以每次都需要改成自己想要的功能。

本文將介紹如何自定義Activity模板并顯示在創(chuàng)建Activity的選項(xiàng)中,效果如圖:

創(chuàng)建自定義模板

首先找到Android studio的安裝路徑,我的是安裝在D盤(pán),打開(kāi)路徑D:\android-studio\plugins\android\lib\templates\activities,我們可以發(fā)現(xiàn)該目錄下均是上圖顯示的各種Activity模板。我們可以拷貝一份Login?Activity(或EmptyActivity)并命名為DemoActivity(可自定義),然后我們就可以進(jìn)行對(duì)應(yīng)的更改了

打開(kāi)需要更改的模板,顯示如下

Activity模板

globals.xml.flt為全局配置,無(wú)需修改

recipe.xml.ftl為模板操作指令

template為所需參數(shù)配置

首先我們看template文件:



里面的?instantAppActivityHost、instantAppActivityRoute和activityTitle我們沒(méi)用到,刪除。里面的各個(gè)id都將在模板文件中引用。

接下來(lái)打開(kāi)目錄下root\src\app_package,我們可以看到有有兩個(gè)文件,分別為L(zhǎng)oginActivity.java.flt和LoginActivity.kt.ftl。一個(gè)是java模板,一個(gè)是kotlin模板。在這我們僅接受java模板,kt模板大同小異

將LoginActivity.java.flt,名稱(chēng)改成DemoActivity.java.ftl,并打開(kāi),將public class ${activityClass} extends ${superClass} 改成public class ${activityClass} extends BaseActivity,添加import語(yǔ)句。將其他多余的代碼刪掉。${activityClass}即表示引用在剛才template文件id為activityclass的名稱(chēng)(該名稱(chēng)在創(chuàng)建Activity會(huì)提示用戶(hù)填寫(xiě))?

打開(kāi)root/res/layout,我們可以仿照activity_login.xml.ftl改成我們自定義的activity_demo.xml.ftl

接下來(lái)打開(kāi)recipe.xml.ftl:

recipe

最后一步,重啟Android studio,創(chuàng)建activity時(shí)就可以看到你自定義的模板啦

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,008評(píng)論 25 709
  • 參考 :http://blog.csdn.net/lmj623565791/article/details/516...
    劉小帥閱讀 1,140評(píng)論 0 6
  • 由于項(xiàng)目用上了 mvp 架構(gòu),基本上一個(gè)頁(yè)面就至少需要新創(chuàng)建6個(gè)類(lèi),分別是 model view presente...
    大空ts翼閱讀 2,112評(píng)論 0 4
  • Android Studio自定義模板 寫(xiě)頁(yè)面竟然可以如此輕松 1、概述 上一篇文章,已經(jīng)初步對(duì)Android S...
    Art_Collector閱讀 1,511評(píng)論 0 5
  • 早上7點(diǎn)多起床,8點(diǎn)多吃完早餐然后坐地鐵10點(diǎn)多到達(dá),因?yàn)椴皇侵苣┤瞬皇翘貏e多,且我們?cè)谔詫氋I(mǎi)的電子票優(yōu)惠...
    4點(diǎn)半的恩賜閱讀 314評(píng)論 1 0

友情鏈接更多精彩內(nèi)容