使用資源管理工具管理應用程式的 UI 資源

資源管理工具是匯入、建立、管理及使用應用程式資源的工具視窗。如要開啟工具視窗,請從選單列中依序選取「View」(檢視) >「Tool Windows」(工具視窗) >「Resource Manager」(資源管理工具),或選取左側列中的「Resource Manager」(資源管理工具)

圖 1:資源管理工具

  1. 按一下「Add」(新增) ,在專案中加入新的資源。您可以新增圖片素材資源、向量素材資源、字型、資源檔案和值,也可以匯入資源至專案。
  2. 模組下拉式選單可讓您查看特定模組的資源。
  3. 使用搜尋列,搜尋專案內所有模組的資源。
  4. 資源管理工具會按照類型分組資源。請透過這些分頁切換各個資源類型。按一下溢位圖示 溢位圖示 以顯示其他資源類型。
  5. 篩選器按鈕可讓您查看本機相依模組、外部程式庫和 Android 架構的資源。您也可以使用篩選器顯示主題屬性。
  6. 主要內容區域會顯示資源的預覽。在資源上按一下滑鼠右鍵以查看內容選單,其中包含重新命名資源及搜尋應用程式資源的位置。
  7. 按一下這些按鈕,即可以資訊方塊或清單的形式查看資源。
  8. 按一下這些按鈕即可變更資源的預覽大小。

除了上述功能以外,資源管理工具也提供簡單的方式,可在專案中大量匯入可繪項目。您可以將圖片檔 (包括 SVG 檔案) 直接拖曳到資源管理工具,或是使用「匯入可繪項目」精靈。詳情請參閱下方的「匯入資源至專案」。

在資源上按兩下,資源管理工具就可顯示更詳細的資訊。如果資源有多個版本,則此詳細資料檢視畫面會顯示每個版本以及任何相關聯的限定詞,如圖 2 所示。您也可以按兩下特定版本,以在編輯器視窗中開啟。

圖 2:顯示不同螢幕密度圖片資源版本的資源管理工具。

在專案中匯入可繪項目

如要匯入圖片資源,請直接將資源檔案或資料夾拖曳到資源管理工具上。將資源拖放至資源管理工具後,系統會顯示「Import drawables」(匯入可繪項目) 對話方塊,而您可以在此方塊中查看資源摘要,並在匯入前加入所有必要的限定詞。

如要在專案中匯入圖片資源,請按照下列步驟操作:

  1. 將圖片直接拖曳至 Android Studio 中的「Code Sample Browser」(資源管理工具) 視窗。您也可以按一下加號圖示 (+),選擇「Import Drawables」(匯入可繪項目) (如圖 3 所示),然後選取檔案和資料夾。

    圖 3:在下拉式選單中選取「Import Drawables」(匯入可繪項目)

  2. 系統會隨即顯示「Import drawables」(匯入可繪項目) 對話方塊。如圖 4 所示,此對話方塊會顯示您要匯入的資源清單。如要重新命名資源,請按一下每個資源預覽上方的文字方塊。

    如果您要提供同一資源的多個版本,請務必新增裝置設定限定詞,說明資源支援的特定設定。舉例來說,如要針對不同螢幕密度提供同一個資源的多個版本,可以為每個版本新增「Density」(密度) 限定詞。請注意,如有兩個以上資源的名稱和限定詞相同,則系統只會匯入一個版本。如要進一步瞭解資源限定詞,請參閱「提供額外資源」。

    圖 4:「Import Drawables」(匯入可繪項目) 對話方塊。

    為資源命名並新增所有必要的限定詞後,請按一下「Next」(下一步)

  3. 下一個畫面會顯示匯入資源的摘要。準備好要匯入時,請按一下「Import」(匯入)

在「資源管理工具」視窗中,您現在已準備好在專案中使用資源,如圖 5 所示。

圖 5:資源管理工具現在會顯示您匯入的圖片。

自動剖析可繪項目的密度

匯入檔案或資料夾時,如在路徑中包含像素密度限定詞,資源管理工具會在匯入時自動套用像素密度限定詞。資源管理工具會剖析 Android 的像素密度限定詞,以及 iOS 的縮放比例係數。

下表列出 Android 和 iOS 兩種不同支援密度的表示方式:

密度 Android 像素密度限定詞 iOS 縮放比例係數
低密度 (約 120 dpi) ldpi 不支援
中密度 (約 160 dpi) mdpi 原始比例
高密度 (約 240 dpi) hdpi 不支援
超高密度 (約 320dpi) xhdpi @2x
超級高密度 (約 480dpi) xxhdpi @3x
特別超級高密度 (約 640dpi) xxxhdpi @4x

以下為輸入路徑在匯入後如何轉換為資源路徑的範例:

Android 像素密度限定詞:hdpi
輸入路徑:/UserFolder/icon1/hdpi/icon.png
資源路徑:<projectFolder>/<moduleFolder>/src/main/res/drawable-hdpi/icon.png
Android 像素密度限定詞:xxhdpi
輸入路徑:/UserFolder/icon1/abc-xxhdpi/icon.png
資源路徑:<projectFolder>/<moduleFolder>/src/main/res/drawable-xxhdpi/icon.png
iOS 縮放比例係數:@2x
輸入路徑:/UserFolder/icon1/icon@2x.png
資源路徑:<projectFolder>/<moduleFolder>/src/main/res/drawable-xhdpi/icon.png
iOS 縮放比例係數:@2x
輸入路徑:/UserFolder/icon1/icon@2x_alternate.png
資源路徑:<projectFolder>/<moduleFolder>/src/main/res/drawable-xhdpi/icon_alternate.png

如要進一步瞭解如何支援具有不同像素密度的裝置,請參閱「支援不同的像素密度」。

拖曳可繪項目拖曳版面配置中

您可以直接將資源管理工具中的可繪項目拖曳到版面配置中。當您將資源拖放到版面配置上,資源管理工具會為該可繪項目建立對應的 ImageView,如動畫 1 所示:

動畫 1:在「Design」(設計) 檢視畫面中,將可繪項目拖曳到版面配置中。

您也可以直接拖曳到版面配置的 XML 上,如動畫 2 所示:

動畫 2:在「文字」(Text) 檢視畫面中,將可繪項目拖曳到版面配置中。

在「文字」(Text) 分頁中,將可繪項目放置於版面配置時,產生的程式碼會因您拖放版面配置的位置而不同:

  • 如果您將可繪項目移至空白區域,資源管理工具會產生對應的 ImageView
  • 如果您將可繪項目移至版面配置 XML 中的任何屬性上,資源管理工具會將該屬性值取代為可繪項目參照。請注意,您也可以拖曳任何其他資源類型至 XML 屬性以取代屬性值。
  • 如果將可繪項目拖放至現有的 ImageView 元素上,資源管理工具會取代對應的來源屬性。