Flutter基礎(chǔ) - IDE常用設(shè)置及快捷方式

1.前言

工欲善其事袜蚕,必先利其器
本文將介紹Flutter開發(fā)中IDE工具的常用設(shè)置及快捷方式,掌握其中部分內(nèi)容都將極大的提升開發(fā)效率與體驗八毯,趕緊試試吧!

注意:本文使用IDE為Mac OS系統(tǒng)的Android Studio瞄桨,其他操作系統(tǒng)或IDE類似话速,讀者參考時需要自行注意Mac OS系統(tǒng)中“Command”與Windows系統(tǒng)中“Ctrl”的切換。

2.設(shè)置

打開Android Studio芯侥,進(jìn)入"Preferences"泊交,左上角輸入框鍵入"flutter"搜索相關(guān)配置,在"Languages & Frameworks"一項找到"Flutter"柱查,推薦如下設(shè)置:

flutter settings
  • "Perform hot reload on save"(默認(rèn)勾選)廓俭,保證代碼保存時更新可以hot reload到調(diào)試設(shè)備上;
  • "Open Flutter Inspector view on app launch"(建議勾選)唉工,App啟動時自動打開右側(cè)Inspector view研乒;
  • "Show closing labels in Dart source code"(建議勾選),自動在代碼結(jié)束處添加尾部注釋(常見于Widget嵌套語法結(jié)構(gòu)淋硝,不喜歡可以去掉勾選)雹熬;
  • "Format code on save"(建議勾選),可以使代碼更加美觀和規(guī)范奖地;
  • "Organize imports on save"(建議勾選)橄唬,可以自動對imports進(jìn)行排序,去掉無用的imports参歹,但是在使用類似json_serializable這樣的代碼生成器時仰楚,自動管理imports會導(dǎo)致代碼生成失敗,使用前注意去掉勾選犬庇。

3.快捷方式

st*

代碼編輯窗口鍵入"st"后彈出模板代碼菜單僧界,包括:

st* template code

通過光標(biāo)可以選擇創(chuàng)建"Stateless Widget"還是"Stateful Widget",類似的鍵入"inh"也可以創(chuàng)建"Inherited Widget"

inh template code

Alt+Enter

這個快捷方式簡直是Flutter開發(fā)的神器臭挽,建議多多使用它捂襟。

Widget轉(zhuǎn)換

我們經(jīng)常會遇到這樣的情況,創(chuàng)建了一個Stateless Widget欢峰,后來不滿足需求了需要將其重寫成Stateful Widget葬荷,這時,Alt+Enter派上用場了纽帖。光標(biāo)移動到對應(yīng)的類名上宠漩,使用Alt+Enter,彈出轉(zhuǎn)換菜單懊直,選擇"Convert to StatefulWidget"扒吁。

alt+enter menu 1

相信很多聰明的讀者已經(jīng)發(fā)現(xiàn)了,彈出菜單不僅僅是Widget的轉(zhuǎn)換室囊,它還能做更多的事情雕崩。

Widget操作

我們還會經(jīng)常遇到這樣的情況魁索,寫好了widget,但是需要為它調(diào)整布局盼铁,設(shè)置間隔粗蔚,移動位置等等操作,再次祭出Alt+Enter大法饶火。光標(biāo)移動到對應(yīng)widget支鸡,使用Alt+Enter,看看它還能為我們做什么趁窃。

alt+enter menu 2

可以嵌套padding牧挣,center,column醒陆,row以及其他類型widget瀑构,甚至是StreamBuilder,想了解StreamBuilder的讀者可以去閱讀我之前的文章:Flutter響應(yīng)式編程 - Stream刨摩。

如果想直接刪除整個widget寺晌,使用Alt+Enter,"Remove widget"澡刹,或者想和parent widget交換呻征,"swap with parent"。

alt+enter menu 3

移動widget在column或者row中的位置罢浇,

alt+enter menu 4

再或者陆赋,選中多個widget,使用Alt+Enter嚷闭,

alt+enter menu 5

其他操作

使用代碼塊包裹當(dāng)前代碼攒岛,


alt+enter menu 6

手動import,有的時候會遇到不知道依賴代碼的所屬package胞锰,這時候我們需要手動引入灾锯,使用"Alt+Enter"展開提示菜單,

manual import

總之嗅榕,Alt+Enter幾乎可以用于代碼中的任何地方顺饮,還有更多的用法等待大家去發(fā)掘。

快速復(fù)制粘貼

在Android Studio中凌那,我們可以對某一行代碼進(jìn)行快速復(fù)制-粘貼或者剪切-粘貼兼雄,只需將光標(biāo)置于該行任一位置,使用"Command+C"和"Command+V"或者"Command+X"和"Command+V"即可案怯。

查看源碼

光標(biāo)移動到任意代碼上君旦,使用"Command+B"可以查看其源碼澎办。

代碼格式化

除了在IDE中設(shè)置"Format code on save"以外嘲碱,我們還可以使用"Command+Alt+L"快速格式化代碼金砍。

代碼選中

除了光標(biāo)拖動選中代碼的方式以外,我們還可以使用"Alt+↑"和"Alt+↓"快速選中代碼麦锯,前者可以擴大選中范圍恕稠,后者縮小選中范圍。

重命名

當(dāng)我們需要修改變量扶欣,類名鹅巍,方法名等情況時,手動修改往往導(dǎo)致關(guān)聯(lián)代碼無法級聯(lián)更新料祠,使用"Shift+F6"可以幫我們解決這一問題骆捧。

refactor & rename

查找代碼被引用位置

在調(diào)試代碼時我們常常需要查看某一處代碼在其他代碼中的引用位置,除了搜索以外髓绽,還可以使用"Alt+F7"來找到引用位置敛苇,該方式能直接找到引用位置,從而排除其他代碼的干擾顺呕。

find code usage

查詢快捷方式

如果真的忘記了某個快捷方式枫攀,我們還可以使用“Command+Shift+A”打開幫助菜單來查詢,然后輸入關(guān)鍵字即可株茶。

shortcuts list

4.Flutter Outline

該視圖除了能看到當(dāng)前編輯器代碼的類結(jié)構(gòu)之外来涨,其頂部工具欄還包含一些基本操作(前文"Alt+Enter"提及的大部分操作),讀者可自行嘗試启盛。

flutter outline
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蹦掐,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子僵闯,更是在濱河造成了極大的恐慌笤闯,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件棍厂,死亡現(xiàn)場離奇詭異颗味,居然都是意外死亡,警方通過查閱死者的電腦和手機牺弹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進(jìn)店門浦马,熙熙樓的掌柜王于貴愁眉苦臉地迎上來悦析,“玉大人曼库,你說我怎么就攤上這事∥鳎” “怎么了航攒?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵磺陡,是天一觀的道長。 經(jīng)常有香客問我,道長币他,這世上最難降的妖魔是什么坞靶? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮蝴悉,結(jié)果婚禮上彰阴,老公的妹妹穿的比我還像新娘。我一直安慰自己拍冠,他們只是感情好尿这,可當(dāng)我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著庆杜,像睡著了一般射众。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上晃财,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天责球,我揣著相機與錄音,去河邊找鬼拓劝。 笑死雏逾,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的郑临。 我是一名探鬼主播栖博,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼厢洞!你這毒婦竟也來了仇让?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤躺翻,失蹤者是張志新(化名)和其女友劉穎丧叽,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體公你,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡踊淳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了陕靠。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片迂尝。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖剪芥,靈堂內(nèi)的尸體忽然破棺而出垄开,到底是詐尸還是另有隱情,我是刑警寧澤税肪,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布溉躲,位于F島的核電站榜田,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏锻梳。R本人自食惡果不足惜箭券,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望唱蒸。 院中可真熱鬧,春花似錦灸叼、人聲如沸神汹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽屁魏。三九已至,卻和暖如春捉腥,著一層夾襖步出監(jiān)牢的瞬間氓拼,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工抵碟, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留桃漾,地道東北人。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓拟逮,卻偏偏與公主長得像撬统,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子敦迄,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,614評論 2 353