你值得擁有的Android Studio開(kāi)發(fā)小技巧
上一次發(fā)過(guò)了一個(gè)介紹Studio的,這里再發(fā)一個(gè)補(bǔ)充下。
我們都知道,Android Studio的功能是非常強(qiáng)大的,也是很智能的。如果有人告訴你學(xué)Android開(kāi)發(fā)要用命令行,你可以告訴他Android Studio是谷歌提供給開(kāi)發(fā)者提升效率的。試想想你腦袋里有一堆想法,但是開(kāi)發(fā)編碼效率太低導(dǎo)致想法都丟失了或者興趣消失了多可怕對(duì)不。好了廢話不多說(shuō),這里介紹幾個(gè)比較好用的技巧和快捷鍵,提升我們的編碼效率。
1.完成一句代碼
如果我們調(diào)用了一個(gè)方法,并給方法傳遞了參數(shù),這個(gè)時(shí)候如果我們要結(jié)束這個(gè)語(yǔ)句,就會(huì)用鼠標(biāo)或者方向鍵移動(dòng)光標(biāo)到行末,輸入;然后回車(chē)結(jié)束。這樣子其實(shí)效率是很低的,為什么?因?yàn)槲覀兊氖衷阪I盤(pán)上,要去摸鼠標(biāo)和方向鍵的距離都是比較遠(yuǎn)的。所以這里介紹一個(gè)組合快捷鍵用來(lái)完成依據(jù)代碼:Ctrl+Shift+Enter
這里可以看到,我們調(diào)用了方法之后,直接使用快捷鍵,Studio會(huì)直接跳到最后并加了一個(gè)分號(hào),如果我們?cè)侔匆幌驴旖萱I,會(huì)跳轉(zhuǎn)到下一行。如果你覺(jué)得這個(gè)快捷鍵有點(diǎn)長(zhǎng)(我是這么覺(jué)得的),可以通過(guò)自定義快捷鍵來(lái)簡(jiǎn)化這個(gè)功能。下面給下具體的步驟:
① 打開(kāi)Settings
② 選擇Keymap
③ 點(diǎn)擊搜索框右邊的按鈕
④ 按下你需要修改的對(duì)應(yīng)快捷鍵,也就是Ctrl+Shift+Enter,會(huì)搜索到對(duì)應(yīng)的快捷鍵,雙擊對(duì)應(yīng)的快捷鍵設(shè)置,點(diǎn)擊按鈕之后會(huì)出現(xiàn)下圖
⑤ 選擇第一個(gè)選項(xiàng)來(lái)增加一個(gè)快捷鍵,會(huì)出現(xiàn)下圖
可以直接在這個(gè)界面按下你想要的快捷鍵組合,可以看到如果已經(jīng)存在的快捷鍵,那么下面會(huì)出現(xiàn)一個(gè)黃色嘆號(hào)警告,我們可以多嘗試,選擇最方便自己的就可以了。我設(shè)置的是Alt+M,M是移動(dòng)的意思,所以就記住了。
2.打開(kāi)文檔
上一次介紹Studio的通過(guò)設(shè)置讓鼠標(biāo)懸停在代碼上會(huì)打開(kāi)文檔,但是默認(rèn)是不會(huì)的。文檔是我們學(xué)習(xí)的最重要的一個(gè)對(duì)象,在遇到問(wèn)題的時(shí)候第一要想到的應(yīng)該是文檔。打開(kāi)文檔的快捷鍵默認(rèn)是:Ctrl+Q,我們要知道,這不僅僅可以允許我們?cè)诖a中打開(kāi)文檔,也可以在代碼補(bǔ)全的時(shí)候打開(kāi)對(duì)應(yīng)補(bǔ)全的文檔,可以看下面這個(gè)圖
這里在補(bǔ)全的時(shí)候如果我們不知道isEmpty方法的用處,可以先將光標(biāo)移動(dòng)到該補(bǔ)全的位置,然后按下快捷鍵,就可以代開(kāi)對(duì)應(yīng)的文檔。
3.提示方法參數(shù)
有時(shí)候我們寫(xiě)著寫(xiě)著就忘記了這個(gè)方法要傳入一個(gè)什么類(lèi)型的參數(shù),這個(gè)時(shí)候,可以使用快捷鍵:Ctrl+P,效果如下
當(dāng)光標(biāo)在方法中的時(shí)候,按下快捷鍵,Studio會(huì)提示我們這個(gè)方法需要的參數(shù),這個(gè)也是比較常用的。
4.復(fù)制代碼
選中你的代碼,然后按下快捷鍵:Ctrl+D,總比按Ctrl+C和Ctrl+V快吧。
5.快速打開(kāi)文件
當(dāng)我們需要打開(kāi)項(xiàng)目中的某個(gè)文件的時(shí)候,可以通過(guò)快捷鍵Ctrl+Shift+N打開(kāi)搜索框,然后輸入文件名回車(chē)即可。按下快捷鍵會(huì)得到如下搜索框:
6.跳轉(zhuǎn)到代碼聲明
快捷鍵:Ctrl+B,這個(gè)就不多說(shuō)了。
7.重寫(xiě)父類(lèi)方法
快捷鍵:Ctrl+O
可以看到,打開(kāi)了選擇框之后我們可以直接輸入需要重寫(xiě)的方法名來(lái)進(jìn)行查找,匹配上的直接回車(chē)就好。
8.安全重命名
好處就是不用自己手動(dòng)進(jìn)行每個(gè)地方的修改。只需要將光標(biāo)移動(dòng)到要重命名的地方,按下快捷鍵:Shift+F6,這個(gè)時(shí)候會(huì)提示你輸入一個(gè)新的名字,然后系統(tǒng)會(huì)進(jìn)行搜索,找到所有同名的變量或者方法,然后提示給用戶(hù),界面會(huì)是下面這樣:
這個(gè)地方會(huì)顯示所有使用了這個(gè)變量或方法的地方,如果我們需要直接重命名,可以點(diǎn)擊左下角的Do Refactor按鈕進(jìn)行確認(rèn),如果有不需要重命名的地方,可以選中該行,右擊,選擇Exclude進(jìn)行剔除。
9.查找使用方法或類(lèi)的地方
當(dāng)項(xiàng)目比較大的而且對(duì)Activity進(jìn)行過(guò)重構(gòu)的時(shí)候,或者對(duì)別的代碼進(jìn)行維護(hù)的時(shí)候,很多時(shí)候我們需要知道一個(gè)方法究竟在哪里被調(diào)用了,這個(gè)時(shí)候可以通過(guò)快捷鍵:Alt+F7來(lái)查找到所有使用了這個(gè)方法的地方。
10.打開(kāi)最近使用文件列表
快捷鍵:Ctrl+E,這個(gè)也不多說(shuō),谷歌官方的演示視頻會(huì)經(jīng)??吹接泄こ處熡眠@個(gè)快捷鍵。
接著介紹一些除了快捷鍵以外的技巧。
1.如果要判斷一個(gè)字符串是不是空你會(huì)像下面這樣做嗎?
2.如果你要逆序遍歷一個(gè)ArrayList你會(huì)像下面這樣做嗎?
3.如果要根據(jù)一個(gè)Json數(shù)據(jù)來(lái)寫(xiě)一個(gè)對(duì)應(yīng)的bean,你會(huì)怎么寫(xiě)?這里可以使用一個(gè)比較方便的插件來(lái)做,名字叫 GSONFormat ,我們使用這個(gè)插件可以通過(guò)一段Json生成一個(gè)對(duì)應(yīng)的類(lèi),怎么下載這個(gè)插件的話可以自己百度一下。
比如有這么一段Json數(shù)據(jù):
{ "errNum": "0", "errMsg": "success", "querySign": "3845925467,2370020290", "retData": [ { "rect": { "left": "0", "top": "0", "width": "33", "height": "31" }, "word": " 8" } ] }
插件界面:
使用插件可以直接生成一個(gè)對(duì)應(yīng)的類(lèi)代碼如下:
public class MyBean { /** * errNum : 0 * errMsg : success * querySign : 3845925467,2370020290 * retData : [{"rect":{"left":"0","top":"0","width":"33","height":"31"},"word":" 8"}] */ private String errNum; private String errMsg; private String querySign; /** * rect : {"left":"0","top":"0","width":"33","height":"31"} * word : 8 */ private List<RetDataBean> retData; public String getErrNum() { return errNum;} public void setErrNum(String errNum) { this.errNum = errNum;} public String getErrMsg() { return errMsg;} public void setErrMsg(String errMsg) { this.errMsg = errMsg;} public String getQuerySign() { return querySign;} public void setQuerySign(String querySign) { this.querySign = querySign;} public List<RetDataBean> getRetData() { return retData;} public void setRetData(List<RetDataBean> retData) { this.retData = retData;} public static class RetDataBean { /** * left : 0 * top : 0 * width : 33 * height : 31 */ private RectBean rect; private String word; public RectBean getRect() { return rect;} public void setRect(RectBean rect) { this.rect = rect;} public String getWord() { return word;} public void setWord(String word) { this.word = word;} public static class RectBean { private String left; private String top; private String width; private String height; public String getLeft() { return left;} public void setLeft(String left) { this.left = left;} public String getTop() { return top;} public void setTop(String top) { this.top = top;} public String getWidth() { return width;} public void setWidth(String width) { this.width = width;} public String getHeight() { return height;} public void setHeight(String height) { this.height = height;} } } }
這就節(jié)省了很多時(shí)間了。
好了,這次先說(shuō)這么多,想到了再補(bǔ)充下吧。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android編程實(shí)現(xiàn)圖片拍照剪裁的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)圖片拍照剪裁的方法,涉及Android調(diào)用裁剪工具操作圖片的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-12-12flutter升級(jí)3.7.3報(bào)錯(cuò)Unable?to?find?bundled?Java?version解決
這篇文章主要介紹了flutter升級(jí)3.7.3報(bào)錯(cuò)Unable?to?find?bundled?Java?version解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加2023-02-02Android實(shí)現(xiàn)調(diào)用系統(tǒng)相冊(cè)和拍照的Demo示例
這篇文章主要介紹了Android實(shí)現(xiàn)調(diào)用系統(tǒng)相冊(cè)和拍照的Demo示例,實(shí)例分析了Android調(diào)用系統(tǒng)相冊(cè)及拍照的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10Android實(shí)現(xiàn)IM多人員組合的群組頭像
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)IM多人員組合的群組頭像,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-10-10Android動(dòng)態(tài)更換應(yīng)用圖標(biāo)詳情
這篇文章主要介紹了Android動(dòng)態(tài)更換應(yīng)用圖標(biāo)詳情,文章圍繞主題展開(kāi)詳細(xì)的介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-07-07Android自定義View onDraw()方法會(huì)調(diào)用兩次的問(wèn)題解決
這篇文章主要介紹了Android自定義View onDraw()方法會(huì)調(diào)用兩次的問(wèn)題解決,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2024-01-01android Web跳轉(zhuǎn)到app指定頁(yè)面并傳遞參數(shù)實(shí)例
這篇文章主要介紹了android Web跳轉(zhuǎn)到app指定頁(yè)面并傳遞參數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03