ניהול משאבי ממשק המשתמש של האפליקציה באמצעות Resource Manager

מנהל המשאבים הוא חלון של הכלי שמאפשר לייבא, ליצור, לנהל ולהשתמש במשאבים באפליקציה. כדי לפתוח את חלון של הכלי, בוחרים באפשרות View > Tool Windows > Resource Manager בתפריט או בוחרים באפשרות Resource Manager בסרגל הצד הימני.

איור 1. חלון הכלי Resource Manager.

  1. לוחצים על הוספה כדי להוסיף מקור חדש לפרויקט. אתם יכולים להוסיף נכסי תמונה, נכסי וקטור, גופנים או קובצי משאבים וערכים, או לייבא נכסי drawable לפרויקט.
  2. בוחרים מודול כדי לראות את המשאבים שספציפיים למודול הזה.
  3. אפשר לחפש משאב בכל המודולים בפרויקט באמצעות סרגל החיפוש.
  4. הצגת המשאבים לפי סוג במנהל המשאבים. אפשר להשתמש בכרטיסיות האלה כדי לעבור בין סוגי משאבים. לוחצים על סמל האפשרויות הנוספות סמל של אפשרויות נוספות כדי להציג סוגי משאבים נוספים.
  5. כדי לסנן את המשאבים שמוצגים ממודולים מקומיים שתלויים זה בזה, מספריית חיצוניות וממסגרת Android, משתמשים בלחצן הסינון. אפשר גם להשתמש במסנן כדי להציג מאפייני עיצוב.
  6. אפשר לראות תצוגה מקדימה של המשאבים באזור התוכן הראשי. לוחצים לחיצה ימנית על משאב כדי לראות תפריט הקשר שבו אפשר לשנות את שם המשאב ולחפש באפליקציה את המקומות שבהם המשאב נמצא בשימוש.
  7. כדי לראות את המשאבים בתצוגת משבצות או בתצוגת רשימה, לוחצים על הלחצנים האלה.
  8. לוחצים על הלחצנים האלה כדי לשנות את גודל התצוגה המקדימה של הנכסים.

בנוסף לתכונות האלה, מנהל המשאבים מאפשר לייבא בבת אחת פריטים גרפיים שניתנים להזזה לפרויקט. כדי לייבא בכמות גדולה, אפשר:

  • גוררים את קובצי התמונות – כולל קובצי SVG – ישירות אל הכלי לניהול משאבים.
  • משתמשים באשף Import Drawables.

מידע נוסף מופיע בקטע ייבוא משאבי drawable לפרויקט.

כדי לראות מידע מפורט יותר, לוחצים פעמיים על משאב ב-Resource Manager. אם יש לכם כמה גרסאות של משאב, בתצוגה המפורטת הזו מוצגת כל גרסה יחד עם כל המסננים המשויכים, כמו שמוצג באיור 2. מכאן, אפשר ללחוץ לחיצה כפולה על גרסה ספציפית כדי לפתוח אותה בחלון עריכה.

איור 2. מנהל המשאבים שבו מוצגות גרסאות של משאב תמונה עבור ערכי דחיסות שונים למסך.

ייבוא של רכיבי drawable לפרויקט

אתם יכולים להשתמש במנהל המשאבים כדי לייבא משאבי תמונות לפרויקט. רשימה של סוגי התמונות הנתמכים זמינה במאמר תמיכה בתמונות.

כדי לייבא משאבי תמונות לפרויקט:

  1. גוררים את התמונות ישירות לחלון מנהל המשאבים ב-Android Studio.

    • אפשרות נוספת:
      1. לוחצים על סמל הפלוס (+).
      2. בוחרים באפשרות Import Drawables (ייבוא של רכיבים גרפיים), כמו שמוצג באיור 3.
      3. בוחרים את הקבצים והתיקיות שרוצים לייבא.

    איור 3. בתפריט, בוחרים באפשרות ייבוא של רכיבי Drawable.

  2. מופיעה תיבת הדו-שיח Import drawables, כמו שמוצג באיור 4. בתיבת הדו-שיח הזו מוצגת רשימה של המשאבים שאתם מייבאים. כדי לשנות את השם של נכס, לוחצים על התיבה שמעל התצוגה המקדימה של הנכס.

    אם אתם מספקים כמה גרסאות של אותו משאב, צריך להוסיף מסנני התאמה של הגדרות המכשיר, כמו שמתואר בקטע הבא, שמפרטים את ההגדרה הספציפית שכל משאב תומך בה.

    לדוגמה, אם אתם מספקים כמה גרסאות של אותו משאב לצפיפויות מסך שונות, אתם יכולים להוסיף לכל גרסה את המסנן Density. הערה: אם לשני משאבים או יותר יש את אותו שם ואותם מסננים, רק גרסה אחת תיווה.

    מידע נוסף על מזהי משאבים זמין במאמר הוספת משאבים חלופיים.

    איור 4. תיבת הדו-שיח Import drawables.

    אחרי שנותנים שם למשאבים ומוסיפים את כל המסננים הנדרשים, לוחצים על הבא.

  3. במסך הבא מוצג סיכום של המשאבים שאתם מייבאים. כשמוכנים לייבא, לוחצים על ייבוא.

בחלון מנהל המשאבים, המשאבים מוכנים לשימוש בפרויקט, כמו שמוצג באיור 5.

איור 5. עכשיו התמונות שיובאו מופיעות במנהל המשאבים.

ניתוח אוטומטי של צפיפויות של רכיבי drawable

כשמייבאים קובץ או תיקייה והנתיב שלהם מכיל מגדיר דחיסות, מנהל המשאבים מחיל באופן אוטומטי את מגדיר הדחיסות כחלק מהייבוא. מנהל המשאבים יכול לנתח גם את מסווגי הצפיפות של Android וגם את גורמי קנה המידה של iOS.

בטבלה הזו מפורט איך צפיפויות שונות נתמכות ב-Android וב-iOS:

צפיפות מגדיר דחיסות ב-Android גורם לקביעת קנה מידה ב-iOS
צפיפות נמוכה (‎~120 dpi) ldpi לא נתמך
צפיפות בינונית (~160 dpi) mdpi קנה מידה מקורי
צפיפות גבוהה (‎~240 dpi) 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
Input path: /UserFolder/icon1/icon@2x_alternate.png
Resource path: <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.

מידע על טיפול מתקדם במשאבים, כולל טעינה דינמית של גופנים, משאבים ספציפיים להגדרות וספריות משאבים ספציפיות לכלי הכתיבה, זמין במאמר בנושא משאבים בכלי הכתיבה.

מקורות מידע נוספים

צפיות בתוכן