web analytics

Flutter Snippet สำหรับ Android Studio

cove

สวัสดีครับ ช่วงนี้ผมกำลังเขียน Flutter จะบอกว่ามันสนุกมาก เจ้า Flutter สามารถเขียนด้วย VS Code หรือ Android Studio ก็ได้ ให้เลือกใช้แล้วแต่ถนัด ส่วนตัวผมถนัด Android Studio มากกว่า เพราะถนัดพวก Shortcut key ต่างๆ ทีนี้ปัญหาที่พบคือใน Android Studio ไม่มี Snippet ของ Flutter จะมีแค่พวก stful stless ที่ติดมาให้ หาใน Plugin ก็ไม่มี (หรือหาไม่เจอก็ไม่รู้)  แต่ใน Extension ของ VS Code มีเพียบ ผมก็เลยเอา Snippet มาใส่ใน Android Studio ซะเลย โดยใน Android Studio เรียกว่า Live template แล้วก็เอามาแชร์เผื่อเป็นประโยชน์ครับ

 

 

การติดตั้ง

ดาวน์โหลดไฟล์ .jar
https://github.com/benznest/flutter-snippet/raw/master/flutter-snippet.jar

 

จากนั้นไปที่ Android Studio > File > Import Settings แล้วเลือกไฟล์ .jar

1

 

แล้วจะมีหน้าต่างแสดงรายละเอียด ให้ติ๊ก Live template กด Ok

2

 

การใช้งาน

ใช้ prefix นำหน้าด้วยคำว่า flt
ใช้ได้ในไฟล์ .dart เท่านั้น และคำสั่งแบ่งเป็น 2 ระดับคือ
Top level คือ เรียกได้เฉพาะนอก method เช่น คำสั่งสร้าง StatefulWidget
Statement
คือ เรียกได้เฉพาะใน method เช่น คำสั่งสร้าง Button

 

เช่น คำสั่ง flt stful run app

a1

 

Snippet สำหรับ Flutter

ส่วนใหญ่จะเป็นโค้ดที่ใช้บ่อยๆ ใน Flutter

flt animation→ StatefulWidget and Animation Controller
flt btn raise→ Raised button widget and Text child
flt btn flat Flat button widget and Text child
flt btn flat icon Flat button widget and Icon child
flt btn bar Btton bar widget
flt build→ Build widget method
flt card→ Basic card widget
flt center→ Center widget
flt column→ Column widget
flt container radius→ Container and Radius border
flt import cupertino→ Add importing cupertino library
flt cupert segment control→ Custom Segmented Control
flt cupert show datetime dialog→ Show Cupertino datetime dialog
flt duw→ didUpdateWidget function
flt dispose→ dispose function
flt drawer→ Drawer widget
flt expand→ Expanded widget
flt form validate→ Basic form validation
flt gesture→ Gesture Detector Widget
flt gridview builder→ Custom Gridview with Builder
flt icon→ Icon widget
flt img asset→ Image Asset widget
flt img url→ Load image from URL
flt init→ initState function
flt listview→ Basic Listview
flt listview builder→ Custom Listview with Builder
flt import material→ Add importing material library
flt material route→ Material route
flt model→ Custom Model class and json converter
flt navigate pop→ Pop page function
flt navigate push→ Push page function
flt newinstance→ newIntance function
flt orientation→ Check Orientation
flt padding→ Padding widget
flt popup menu Basic Popup menu
flt row→ Row widget
flt setstate→ setState function
flt show dialog→ showDialog function
flt snackbar→ Snack Bar widget
flt stful→ StatefulWidget and build function
flt stful anim→ StatefulWidget and Animation Controller
flt stful run app→ StatefulWidget MaterialApp runApp and Simple Scaffold
flt stful scff floating→ StatefulWidget Simple Scaffold and Floating button
flt stless→ Basic StatelessWidget
flt text→ Text widget
flt text style→ TextStyle widget
flt theme data→ ThemeData and color
flt timer→ Timer widget

 

การ import สามารถพิมพ์ flt imp ได้เลย

4

 

Snippet สำหรับ HTTP library

Snippet สำหรับ http library

a2

flt http client→ Create client for multi request in sequence
flt http fetch method→ fetch data from network function
flt http get→ Send request with GET method
flt http post→ Send request with POST method
flt import http→ Add importing http library

 

Snippet สำหรับ Redux on Flutter

flt import redux→ Add importing redux library
flt redux app full→ Simple Redux App
flt redux connector→ Connector redux widget
flt redux store→ Store variable
flt redux store provider→ StoreProvider widget

 

Snippet สำหรับ Shared Preferences

flt import sharepref→ Add importing Shared Preference library
flt sharepref get→ Get data from Shared Preference
flt sharepref set→ Set data to Shared Preference

 

Snippet สำหรับ Sqflite

flt import sqflite→ Add importing Sqflite library
flt sqflite get→ Get data from Sqflite
flt sqflite provider→ Provider for Sqflite

Snippet สำหรับ Cupertino Seeting

flt import cupert setting Add importing Cupertino Setting library
flt cupert sett btn→ Cupertino Setting Button Widget
flt cupert sett control→ Cupertino Setting Control Widget
flt cupert sett head→ Cupertino Setting Header Widget
flt cupert sett select Cupertino Setting Select Widget
flt cupert sett style Cupertino Setting Style Widget
flt cupert setting Cupertino Setting Full Widget

 

การปิด Snippet ที่ไม่ใช้

สามารถปิดตัวที่ไม่ใช้ โดยเข้าไปที่ File >Setting > Editor > Live Templates เช่น ถ้ามไม่ได้ใช้ Redux ก็ปิดมัน เพื่อให้การทำงานไวขึ้น

3

 

 

 

รายละเอียดต่างๆอยู่ที่ Github ด้วย

https://github.com/benznest/flutter-snippet