מנהל המשאבים הוא חלון של הכלי שמאפשר לייבא, ליצור, לנהל ולהשתמש במשאבים באפליקציה. כדי לפתוח את חלון הכלי, בוחרים באפשרות View > Tool Windows > Resource Manager בתפריט או באפשרות Resource Manager בסרגל הצד הימני.
- לוחצים על Add
כדי להוסיף משאב חדש לפרויקט. אתם יכולים להוסיף נכסי תמונות, נכסים וקטוריים, גופנים או קובצי משאבים וערכים, או לייבא פריטים שניתן להציג לפרויקט.
- כדי לראות מקורות מידע שרלוונטיים למודול מסוים, צריך לבחור את המודול.
- בשורת החיפוש, מחפשים משאב בכל המודולים בפרויקט.
- הצגת המשאבים לפי סוג במנהל המשאבים.
אתם יכולים להשתמש בכרטיסיות האלה כדי לעבור בין סוגי המשאבים. לוחצים על סמל האפשרויות הנוספות
כדי להציג סוגי משאבים נוספים. - אפשר לסנן את המשאבים שמוצגים ממודולים תלויים מקומיים, מספריות חיצוניות ומ-Android framework באמצעות לחצן הסינון. אפשר גם להשתמש במסנן כדי להציג מאפייני נושא.
- באזור התוכן הראשי, אפשר לראות תצוגה מקדימה של המשאבים. לוחצים לחיצה ימנית על משאב כדי לפתוח תפריט הקשר שבו אפשר לשנות את שם המשאב ולחפש באפליקציה איפה המשאב נמצא בשימוש.
- לוחצים על הלחצנים האלה כדי להציג את המשאבים כמשבצות או כרשימות.
- לוחצים על הלחצנים האלה כדי לשנות את גודל התצוגה המקדימה של המשאבים.
בנוסף לתכונות האלה, מנהל המשאבים מאפשר לייבא בכמות גדולה פריטים שניתן לשרטט לפרויקט. כדי לייבא בכמות גדולה, אפשר:
- גוררים את קובצי התמונות, כולל קובצי SVG, ישירות אל מנהל המשאבים.
- משתמשים באשף Import Drawables.
מידע נוסף זמין בקטע ייבוא פריטים שניתן לשרטט לפרויקט.
כדי לראות מידע מפורט יותר, לוחצים לחיצה כפולה על משאב במנהל המשאבים. אם יש לכם כמה גרסאות של משאב, בתצוגה המפורטת הזו מוצגת כל גרסה יחד עם כל המאפיינים המשויכים, כפי שמוצג באיור 2. כאן אפשר ללחוץ לחיצה כפולה על גרסה ספציפית כדי לפתוח אותה בחלון של עורך.
ייבוא פריטים שניתן לשרטט לפרויקט
אתם יכולים להשתמש במנהל המשאבים כדי לייבא משאבי תמונות לפרויקט. כאן אפשר למצוא רשימה של סוגי התמונות הנתמכים.
כדי לייבא משאבי תמונות לפרויקט:
גוררים את התמונות ישירות לחלון Resource Manager ב-Android Studio.
- לחלופין, אתם יכולים:
- לוחצים על סמל הפלוס (+).
- בוחרים באפשרות Import Drawables, כמו שמוצג באיור 3.
- בוחרים את הקבצים והתיקיות שרוצים לייבא.
תרשים 3. בתפריט, בוחרים באפשרות Import Drawables (ייבוא פריטים שניתן לשרטט). - לחלופין, אתם יכולים:
מופיעה תיבת הדו-שיח Import drawables, כמו שמוצג באיור 4. בתיבת הדו-שיח הזו מוצגת רשימה של המשאבים שאתם מייבאים. כדי לשנות את השם של משאב, לוחצים על התיבה שמעל התצוגה המקדימה של המשאב.
אם אתם מספקים כמה גרסאות של אותו משאב, הוסיפו מחרוזות להגדרת תצורה של מכשיר, כמו שמתואר בקטע הבא, שמתארות את ההגדרה הספציפית שכל משאב תומך בה.
לדוגמה, אם אתם מספקים כמה גרסאות של אותו משאב לצפיפויות מסך שונות, אתם יכולים להוסיף מגדיר צפיפות לכל גרסה. שימו לב: אם לשני משאבים או יותר יש את אותו שם ואותם מאפיינים, רק גרסה אחת מיובאת.
מידע נוסף על מגדירי משאבים זמין במאמר הוספת משאבים חלופיים.
איור 4. תיבת הדו-שיח Import drawables. אחרי שנותנים שמות למשאבים ומוסיפים את כל המאפיינים הנדרשים, לוחצים על Next.
במסך הבא מוצג סיכום של המשאבים שאתם מייבאים. כשתהיו מוכנים לייבא, לחצו על Import.
בחלון Resource Manager, המשאבים מוכנים לשימוש בפרויקט, כמו שמוצג באיור 5.
ניתוח אוטומטי של צפיפויות של רכיבים גרפיים
כשמייבאים קובץ או תיקייה והנתיב שלהם מכיל מגדיר דחיסות, מנהל המשאבים מחיל באופן אוטומטי את מגדיר הדחיסות כחלק מהייבוא. מנהל המשאבים יכול לנתח גם את מגדירי הדחיסות של Android וגם את הגורמים לקביעת קנה מידה של iOS.
בטבלה הבאה מפורטות צפיפויות הפיקסלים הנתמכות ב-Android וב-iOS:
| צפיפות | מגדיר דחיסות ב-Android | גורם לקביעת קנה מידה ב-iOS |
|---|---|---|
| צפיפות נמוכה (כ-120dpi) | ldpi |
לא נתמך |
| צפיפות בינונית (כ-160 dpi) | mdpi |
קנה מידה מקורי |
| צפיפות גבוהה (כ-240dpi) | hdpi |
לא נתמך |
| צפיפות גבוהה במיוחד (~320 dpi) | xhdpi |
@2x |
| צפיפות גבוהה מאוד מאוד (כ-480 dpi) | xxhdpi |
@3x |
| צפיפות גבוהה במיוחד (~640 dpi) | 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
למידע נוסף על תמיכה במכשירים עם צפיפויות פיקסלים שונות, ראו תמיכה בצפיפויות פיקסלים שונות.
שימוש במשאבים ב-Jetpack Compose
כשמפתחים באמצעות Jetpack Compose, ניגשים למשאבים ישירות מקוד Kotlin באמצעות ממשקי API שעברו אופטימיזציה, כדי לוודא שהלוגיקה של ממשק המשתמש וההפניות למשאבים יישארו מסונכרנות.
- תמונות: משתמשים ב-
painterResource(id = R.drawable.your_image)בתוך רכיבImageשניתן לשלב. - מחרוזות: משתמשים ב-
stringResource(id = R.string.your_string)כדי לאחזר טקסט מקומי של ממשק המשתמש. - צבעים: אפשר להשתמש ב-
colorResource(id = R.color.your_color)כדי להחיל צבעים שמוגדרים בעיצוב.
מנהל המשאבים מוודא שהמזהים האלה נוצרים בצורה נכונה, ומאפשר לכם להפנות בצורה חלקה לנכסים שלכם מההיררכיה של ממשק המשתמש של Compose.
במאמר משאבים ב-Compose מוסבר איך לטפל במשאבים מתקדמים, כולל טעינת גופנים דינמית, משאבים ספציפיים להגדרות וספריות משאבים ספציפיות ל-Compose.