2014-04-09 27 views
21

當我在路徑中查找(Ctrl + Shift + F)時,我經常在R.java文件的「生成代碼中的用法」下得到結果。當我搜索我的代碼時,我想做的只是:搜索我的代碼。不是由我的代碼生成的文件。Ignore R.java fies in查找結果

是否可以讓查找對話框在結果中不顯示任何R.java文件?我想要的唯一結果是在「發現事件」下的那些結果

謝謝!

+0

這個問題有一個更好的答案在這裏:http://stackoverflow.com/questions/29682656/how-do-i-write -a-custom-search-filter-to-weed-out -r-java-files –

+0

[我如何編寫自定義搜索過濾器來清除R.java文件?](http://stackoverflow.com/questions/29682656/how-do-i-write-a-custom-search-filter-to-weed-out -r-java-files) – CrandellWS

回答

2

如果您使用的是Android Studio,實現此目的的一種簡單方法是將Scope設置爲Directory(而不是整個項目),並將此目錄設置爲您的src文件夾 - 因爲R.java出現在build /生成它不會出現在那裏的結果。

+0

感謝您的回答!這適用於僅包含一個模塊的項目。有沒有辦法使用這種方法搜索項目多個模塊中的所有src文件夾? –

+0

不是我意識到不幸!如果我們可以在文件掩碼中使用正則表達式或者表示「not filename」,我想這很容易,但這似乎不可能 – Mete

3

搜索多個模塊,但忽略R.java,你可以使用下面的掩碼IF你沒有項目中的任何其他單個字符的文件名:

☑ File mask(s): ??*.* 

即搜索結果限制爲文件名至少有2個字符+任何擴展名。

27

Android Studio(如其祖先IntelliJ)允許您定義自定義範圍以幫助您在搜索時排除中間文件。

]1

下面是我用它來設置此步驟:

  1. 把焦點在路徑對話框中找到(按Ctrl + Shift + F我的機器上)。
  2. 在範圍區域中,選擇自定義單選按鈕。然後點擊下拉框右側的「...」按鈕。這將彈出Scopes對話框。
  3. 單擊Scopes對話框左側的「+」按鈕,將出現Add New Scope對話框。將其命名爲「ExcludeIntermediates」。
  4. 在模式字段中,粘貼在下面的模式,然後單擊OK:

    !file:*intermediates*/&&!file:*generated*/ 
    

這種模式排除了爆炸,AAR和AndroidManifest.xml中R.java文件和其他中間體,如佈局文件在filtered_manifests文件夾中複製。

+3

令人驚歎!這是我一直在尋找的答案,對於那些在當天做很多次Ctrl + Shift + F的人來說,這是最正確的答案。 –

+0

必須選擇本地... – CrandellWS

2

我使用Android Studio中的「自定義範圍」來忽略R.java文件。其他人描述瞭如何創建/保存一個「共享的自定義作用域」,以後可以上傳到一個git存儲庫。我剛剛要分享我的自定義範圍的字符串:(即* _ java文件)

  • 忽略R.java文件
  • 忽略了Android的註解生成的所有* .java文件
  • 包括strings.xml,dimens.xml,styles.xml,attrs.xml,顏色。XML文件
  • 包括佈局/*路徑中的所有XML文件

file:*java&&!file:R.java&&!file:*_.java||file:*strings.xml||file:*dimes.xml||file:*styles.xml||file:*attrs.xml||file:*colors.xml||file:*layout/*xml&&!file:*build/*xml

1

這種模式不包括在分解-AAR和AndroidManifest.xml中R.java文件和其他中間體如佈局文件在filtered_manifests文件夾中複製。

  • 忽略R.java文件
  • 忽略了Android的註解生成的所有* .java文件(即* _。java文件)
  • 包括的strings.xml,dimens.xml,風格.XML,attrs.xml,colors.xml文件
  • 包括佈局/*路徑中的所有XML文件

    !file:*intermediates*/&&!file:*generated*/&&file:*java&&!file:R.java&&!file:*_.java||file:*strings.xml||file:*dimes.xml||file:*styles.xml||file:*attrs.xml||file:*colors.xml||file:*layout/*xml&&!file:*build/*xml 
    

從組合:

https://stackoverflow.com/a/32238593/1815624

&

https://stackoverflow.com/a/32680493/1815624

0

你可能只是避免所有生成的文件從您的項目,如麥克·埃文斯在此建議tweet

你只需要添加除提到的模式的範圍:

enter image description here