欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android Studio生成 Flutter 模板代碼技巧詳解

 更新時(shí)間:2022年10月11日 09:18:53   作者:滄海一樹  
這篇文章主要為大家介紹了Android Studio生成 Flutter 模板代碼技巧詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

在開發(fā) Flutter 時(shí),常常需要?jiǎng)?chuàng)建新的頁(yè)面或新的 Widget,每次都重新手寫總是很麻煩,這篇文章介紹一些減少手寫樣板代碼的方式。

筆者使用的是 Android Studio,所以這里的技巧都是在 AS 中使用的。

快捷輸入

Android Studio 的 Flutter 插件提供了一些在代碼編輯區(qū)域的快捷輸入,根據(jù)這些輸入可以快速生成模板代碼。最常用的快捷輸入是 stlessstful。

stless 表示生成一個(gè) Stateless 的 Widget。

// | 表示多行光標(biāo),可以輸入類名
class | extends StatelessWidget {
  const |({Key? key}) : super(key: key);
  @override
  Widget build(BuildContext context) {
    return Container();
  }
}

stful 表示生成一個(gè) Stateful 的 Widget。

// | 表示多行光標(biāo),可以輸入類名
class | extends StatefulWidget {
  const |({Key? key}) : super(key: key);
  @override
  _|State createState() => _State();
}
class _|State extends State<> {
  @override
  Widget build(BuildContext context) {
    return Container();
  }
}

一個(gè)小缺點(diǎn):不能自動(dòng)生成 import,需要額外手動(dòng) import material 庫(kù)。

AS 文件模板

Android Studio 提供了強(qiáng)大的代碼和文件模板功能,我們可以使用它來(lái)創(chuàng)建 Flutter 的模板。

如何創(chuàng)建模板

在文件目錄處,右鍵選擇 New,選擇 Edit File Templates...,會(huì)出現(xiàn)一個(gè)編輯模板的彈窗。

在彈窗中,點(diǎn)擊下圖紅框中的 + 號(hào),就可以創(chuàng)建一個(gè)文件模板了,只需要將模板代碼輸入到右側(cè)的編輯區(qū)域即可。

代碼模板示例

StatelessWidget 模板

#set( $nameparts = $NAME.split("_"))
#set( $namepart = '')
#set( $classname = '')
#foreach( $namepart in $nameparts )
    #set( $classname = $classname + $namepart.substring(0, 1).toUpperCase() + $namepart.substring(1))
#end
import 'package:flutter/material.dart';
class $classname extends StatelessWidget {
    // TODO: add state variables, methods and constructor params
    $classname();
    @override
    Widget build(BuildContext context) {
        // TODO: add widget build method
        return null;
    }
}

StatefulWidget 模板

#set( $nameparts = $NAME.split("_"))
#set( $namepart = '')
#set( $classname = '')
#foreach( $namepart in $nameparts )
    #set( $classname = $classname + $namepart.substring(0, 1).toUpperCase() + $namepart.substring(1))
#end
import 'package:flutter/material.dart';
class $classname extends StatefulWidget {
    @override
    _${classname}State createState() => new _${classname}State();
}
class _${classname}State extends State<$classname> {
    // TODO: add state variables and methods
    @override
    Widget build(BuildContext context) {
        // TODO: add widget build method
        return null;
    }
}

這里最值得注意的是 import 語(yǔ)句前的的一段代碼,它是把小寫下劃線格式的 dart 文件名,轉(zhuǎn)換成大駝峰格式的 dart 類名。比如 hello_world_widget.dart 就會(huì)變成 HelloWorldWidget

這樣就可以模仿著寫一個(gè)自己的模板了,比如筆者針對(duì) Stateless 的 Scaffold 的頁(yè)面制作了一個(gè)模板:

#set( $nameparts = $NAME.split("_"))
#set( $namepart = '')
#set( $classname = '')
#foreach( $namepart in $nameparts )
    #set( $classname = $classname + $namepart.substring(0, 1).toUpperCase() + $namepart.substring(1))
#end
import 'package:flutter/material.dart';
class $classname extends StatelessWidget {
  const $classname({Key? key}) : super(key: key);
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("$classname"),
      ),
      body: Container(),
    );
  }
}

如何使用模板

在文件目錄處,右鍵選擇 New,選擇自己創(chuàng)建的模板(如下圖),就會(huì)彈出一個(gè)彈窗,輸入 dart 文件名即可生成模板代碼文件。

參考文檔

How to make templates in Android Studio

以上就是Android Studio生成 Flutter 模板代碼技巧詳解的詳細(xì)內(nèi)容,更多關(guān)于Android Studio生成Flutter模板的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • android 獲取APP的唯一標(biāo)識(shí)applicationId的實(shí)例

    android 獲取APP的唯一標(biāo)識(shí)applicationId的實(shí)例

    下面小編就為大家分享一篇android 獲取APP的唯一標(biāo)識(shí)applicationId的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • Android 進(jìn)度條使用詳解及示例代碼

    Android 進(jìn)度條使用詳解及示例代碼

    本文主要介紹Android 進(jìn)度條的知識(shí),這里整理了相關(guān)資料及實(shí)現(xiàn)示例代碼,有需要的小伙伴可以參考下
    2016-09-09
  • Android游戲開發(fā)之黑白棋

    Android游戲開發(fā)之黑白棋

    本文主要介紹Android黑白棋游戲?qū)崿F(xiàn)過(guò)程及代碼解析,將著重介紹黑白棋實(shí)現(xiàn)過(guò)程中用到的算法。對(duì)于Android游戲開發(fā)很有幫助。
    2016-08-08
  • Android使用gallery和imageSwitch制作可左右循環(huán)滑動(dòng)的圖片瀏覽器

    Android使用gallery和imageSwitch制作可左右循環(huán)滑動(dòng)的圖片瀏覽器

    本文主要介紹了android使用gallery和imageSwitch制作可左右循環(huán)滑動(dòng)的圖片瀏覽器的示例代碼。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2017-04-04
  • Android studio實(shí)現(xiàn)菜單操作

    Android studio實(shí)現(xiàn)菜單操作

    這篇文章主要為大家詳細(xì)介紹了Android studio實(shí)現(xiàn)菜單操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • Android Jetpack架構(gòu)組件 ViewModel詳解

    Android Jetpack架構(gòu)組件 ViewModel詳解

    這篇文章主要介紹了Android Jetpack架構(gòu)組件 ViewModel詳解,ViewModel類讓數(shù)據(jù)可在發(fā)生屏幕旋轉(zhuǎn)等配置更改后繼續(xù)存在,ViewModel類旨在以注重生命周期的方式存儲(chǔ)和管理界面相關(guān)的數(shù)據(jù)。感興趣可以來(lái)學(xué)習(xí)一下
    2020-07-07
  • Android繪制鐘表的方法

    Android繪制鐘表的方法

    這篇文章主要為大家詳細(xì)介紹了Android繪制鐘表的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • Android實(shí)現(xiàn)圓形圖片效果

    Android實(shí)現(xiàn)圓形圖片效果

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)圓形圖片效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • 用Android Studio3.0新功能加快構(gòu)建速度

    用Android Studio3.0新功能加快構(gòu)建速度

    本文主要介紹了使用Android Studio3.0新功能,加快Android Studio的構(gòu)建速度等相關(guān)做法。
    2017-11-11
  • AndroidStudio中AVD虛擬機(jī)設(shè)備空間不足調(diào)試過(guò)程出現(xiàn)的黑屏問(wèn)題及解決方案

    AndroidStudio中AVD虛擬機(jī)設(shè)備空間不足調(diào)試過(guò)程出現(xiàn)的黑屏問(wèn)題及解決方案

    這篇文章主要介紹了解決AndroidStudio中AVD虛擬機(jī)設(shè)備空間不足調(diào)試過(guò)程出現(xiàn)的黑屏問(wèn)題,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04

最新評(píng)論