פקדים מותאמים אישית

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

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

ה-method setCustomControl מספקת מיקומים כמו שמוגדר ב-CustomControlPosition טיפוסים בני מנייה (enum):

  • SECONDARY_HEADER (מופיעה בפריסה לאורך בלבד)
  • BOTTOM_START_BELOW
  • BOTTOM_END_BELOW

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

מיקומי בקרה בהתאמה אישית

הוספת פקד מותאם אישית מתחת לכותרת הראשית

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

המיקום הזה נמצא מתחת לכותרת הראשית של המפה, כשהקצה העליון מיושר עם הקצה התחתון של הכותרת הראשית. הכותרת המשנית שמוגדרת כברירת מחדל מוסתרת. המיקום הזה נתמך רק ב-portrait mode. ב-landscape mode, הכותרת המשנית לא זמינה והפריסה לא משתנה.

  1. יוצרים תצוגה של Android באמצעות אלמנט מותאם אישית של ממשק המשתמש או עם ViewGroup.
  2. כדי להוסיף מופע של התצוגה ככותרת משנית, מנפחים את קובץ ה-XML או יוצרים תצוגה מותאמת אישית.
  3. השתמש ב-NavigationView.setCustomControl או ב-NavigationFragment.setCustomControl עם CustomControlPosition בתור SECONDARY_ שנפתח.

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

     mNavFragment.setCustomControl(getLayoutInflater().
       inflate(R.layout.your_custom_control, null),
          CustomControlPosition.SECONDARY_HEADER);
    

הסרת כותרת משנית

כדי להסיר את הכותרת המשנית ולחזור לתוכן ברירת המחדל, צריך להשתמש בשיטה setCustomControl.

  • יש להגדיר את התצוגה כ-null כדי להסיר אותה.

    mNavFragment.setCustomControl(null, CustomControlPosition.SECONDARY_HEADER);
    

הוספת פקד מותאם אישית בחלק העליון של תצוגת הניווט

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

  1. יוצרים תצוגה של Android עם הרכיב בממשק המשתמש או עם קבוצת התצוגות שרוצים להוסיף.
  2. יוצרים את תצוגת הניווט או את המקטע.
  3. צריך לקרוא לשיטה setCustomControl בתצוגת הניווט או בקטע המקטע, ומציינים את אמצעי הבקרה והמיקום שבו רוצים להשתמש.

הדוגמה הבאה מראה View בהתאמה אישית שנוסף ל-NavigationFragment:

  private NavigationFragment mNavFragment;
    mNavFragment = (NavigationFragment)
      getFragmentManager().findFragmentById(R.id.navigation_fragment);

    // Create the custom control view.
    MyCustomView myCustomView = new MyCustomView();

    // Add the custom control to the bottom end corner of the layout.
    mNavFragment.setCustomControl(myCustomView, CustomControlPosition.
       BOTTOM_END_BELOW);

הסרת בקרה בהתאמה אישית

כשרוצים להסיר את הפקד בהתאמה אישית, צריך להשתמש בשיטה setCustomControl ולציין את המיקום של הפקד שרוצים להסיר.

  • במיקום התצוגה, מגדירים את הערך null.

    mNavFragment.setCustomControl(null, CustomControlPosition.BOTTOM_END_BELOW);