[Android Studio] Android Studio中查看類的繼承關系


轉載自:http://blog.csdn.net/hyr83960944/article/details/38098091

查看類的繼承關系的快捷鍵F4,在Android Studio常用快捷鍵這篇文章中,有寫了。今天主要是講一些關於這個快捷鍵出來的界面的一些配置,這塊功能相對偏冷一些,可能很多人都會用不到。但是關於這些配置,android studio中很多都是類似的。

廢話不多說,直接上圖,如下圖,我選中Activity,然后按F4,右邊會出現一個和Activity有繼承關系的圖。

1、先簡要分析下圖中幾個元素:

注:這邊說第幾個圖標是從左到右的順序來數的

第一個圖標:顯示所有的繼承關系,包括父類,子類

第二個圖標:顯示父類

第三個圖標:顯示子類

第四個圖標:按字母排序,這個用處不大,大家不用關心

Scope:這個是范圍,就是你要查詢哪個范圍內的繼承關系,后面下拉框就是選擇你想要的范圍。

后面幾個圖標我就不說了,關系不太大。

再說下,查詢到的有繼承關系的類圖標有兩種:

不帶小灰鎖:當前工程中的類


2、Scope簡要分析:

解釋前說明一點,這里所謂的不顯示源碼中的類,都是向下,不是向上,舉個例子,我查看Activity的繼承關系,如果你選擇的范圍為不顯示源碼的范圍,僅僅指Activity的源碼中子類的不顯示,如果還是不理解的話,看下面production的說明。

Production:其實就是查詢范圍當前工程,這個時候就會隱藏繼承Activity的非本工程的類,比如ListActivity.

All:這個好理解,就是包括本工程和源碼

Test:這個從某種意義上來說是和This Class是一樣的。

This Class:當前類

Configure:配置你自己想設置的查詢范圍。

默認的選項就是以上幾個,至於local,share是我自己添加的。

比如我選擇了Production,如下圖,你只會看到MyActivity,我的代碼中還有繼承MyActivity的類,所以MyActivity前面有一個箭頭,不過我沒有展開。


重新選擇MyActivity,然后再按F4,調出繼承關系圖,選擇第二個圖標,然后范圍選當前的類,如圖,你可以看到MyActivity的父類。


選擇第三個圖標,這個時候你就只能看到MyActivity的子類了。

估計可能有些人在用的時候會說我的怎么不靈,那是因為你的Scope選得有問題,一定要注意你選擇的的Scope。


3、接下來主要講點了Configure后如何進行配置

1)圖標及區域功能分析

先通過configure添加Scope,我添加了local和share兩個,其實你能添加的類型也就是兩個,要么是local的要么是share的,名字你可以自己隨便取哈。我這邊便於說明所以直接以類型來命名。

share帶一個白色小箭頭,local沒有,很好區分。

第一個圖標:添加一個Scope

第三個圖標:復制一個Scope,這里是除了Name的完全復制,name默認為Unnamed

第四個圖標:將你選中的Scope另存為,這里說下有時候你可能會點了不靈,這個是Android Studio的bug,你把對話框關掉,重新點configure一般就能行了。

第五、六個圖標:換位置圖標,比如你可以把local移到share上面。

Pattern:范圍匹配(這塊內容一會和右下的四個按鈕一起講)

Pattern下面有一排可選擇的內容,這塊內容其實就是選擇你的工程還有引用的包要以什么方式來顯示,如果你覺得這塊太混亂,不看也罷。你選擇不同的方式,下面的Production Classes和Library Classes會根據你選擇的顯示方式進行顯示。

Include,Exclude:這兩個是相對的,一個添加,一個移除,都是針對Pattern,這里是針對包(package)級別內容的增加移除

Include Recursively,Exclude Recursively:這兩個也是相對的,增加和移除Pattern的內容,這里是針對類級別的內容的增加和移除

Pattern的內容你還可以通過點擊Pattern后面的白色按鈕,來直接編輯。


2)配置參數

選中share,然后copy,你可以看到下圖,出現了一個Unnamed的Scope,Unnamed中Pattern內容是和share一樣的,我將share的Pattern設置到MyActivity類:


將local的Pattern設置到com.example.myapp.*這個包中


配置完成,點ok,回到繼承關系頁面,我們來看下效果,選擇share,你會看到這個時候MyActivity的子類BActivity不會被查詢出來了,因為不在查詢范圍內。


選擇local,local的范圍是整個package,這個時候你可以看到BActivity也被查詢出來了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM