快捷鍵:
Ctrl + Alt + V(Windows/Linux上)
Cmd + Alt + V(OS X)
Android Studio 里抽取變量(Extract Variable)的快捷方式蛛壳。
菜單調(diào)用:
Menu → Refactor → Extract → Variable
在寫代碼時,常常會寫下變量的實例, 值或者new一個Class,然后再去寫變量聲明。
如下圖所示无埃。 在onCreate方法中慰毅,一般要寫一大堆findViewById。如果在layout文件中定義好了一個id為name的textView控件歇万,要在onCreate方法中將其實例化出來末贾,一般都是直接先寫findViewById(R.id.name) 闸溃。
然后我們需要給findViewById(R.id.name)的返回值定義一個變量。這時就可以使用 Ctrl + Alt + V 快捷鍵拱撵。
將光標(biāo)定位在findViewById(R.id.name)上辉川,然后按下Ctrl + Alt + V。
上圖中可以看到Android Studio自動給findViewById(R.id.name)的返回值定義好了一個變量viewByid拴测,viewByid是系統(tǒng)建議的變量名员串,自己可以按需要改成合適的名字。如這里我們可以將其改為“name”昼扛。這樣我們就快速定義好了一個名字叫name的變量。
上圖中還有一個方框,從方框中的提示可以看到抄谐,還可以按下Shift+Tab鍵去改變變量的類型渺鹦,這樣我們可以通過按下Shift+Tab鍵選擇一個兼容的類型。 findViewById(R.id.name)的返回值的類型是View蛹含,其父類是object, 所以如果需要的話毅厚,可以在按下Shift+Tab鍵彈出的窗口中選擇object類型。
但是浦箱,這里將其聲明為object意義不大吸耿。一般來說findViewById的返回的控件我們要根據(jù)其在layout文件中的具體定義,將其類型轉(zhuǎn)換為相應(yīng)的類型如Button, TextView等等酷窥。在上圖的例子中咽安,findViewById(R.id.name)返回值我們應(yīng)該將其類型定義為TextView。
這種情況也好處理蓬推,可以先將findViewById前面加上(TexyView), 就是先把findViewById(R.id.name)的返回值轉(zhuǎn)換為我們需要的TextView類型妆棒,然后再按下Ctrl + Alt + V。 這樣沸伏,AndroidStudio就會自動生成一個TextView類的變量糕珊,我們只要將其名字改成name就可以了。
看下面演示動畫:
抽取變量的另外一種快捷方法是神奇的 ALT+Enter 鍵毅糟。
可以試一下在你要抽取變量的地方红选,直接按下ALT+ Enter鍵,看看是不是更方便姆另。
ALT+Enter鍵的用法在我的另外一篇文章Android Studio 小技巧之【Extract Resource】中介紹過喇肋。
鏈接為:Android Studio 小技巧之【Extract Resource】
總結(jié)
這個方法的要點就是,將鼠標(biāo)定位在要抽取變量的地方蜕青,按Ctrl + Alt + V(Windows/Linux上) 苟蹈,Cmd + Alt + V(OS X),然后改名即可右核。如果需要改變變量的類型慧脱,可以繼續(xù)按Shift+Tab鍵選取兼容的類型。
本文也發(fā)表在本人的CSDN技術(shù)博客上