עמעום סרגלי המערכת (הוצא משימוש)

בשיעור הזה מתואר איך לעמעם את סרגלי המערכת (כלומר, הסטטוס וניווט עמודות) ב-Android 4.0 (רמת API 14) ומעלה. ב-Android אין דרך מובנית לעמעם את סרגלי מידע בגרסאות קודמות.

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

עמעום סרגלי הסטטוס וסרגל הניווט

אפשר לעמעם את סרגלי הסטטוס ואת סרגל הניווט באמצעות סימון SYSTEM_UI_FLAG_LOW_PROFILE, באופן הבא:

Kotlin

// This example uses decor view, but you can use any visible view.
activity?.window?.decorView?.apply {
    systemUiVisibility = View.SYSTEM_UI_FLAG_LOW_PROFILE
}

Java

// This example uses decor view, but you can use any visible view.
View decorView = getActivity().getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_LOW_PROFILE;
decorView.setSystemUiVisibility(uiOptions);

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

איור 1 מציג תמונת גלריה שבה סרגל הניווט מעומעם (שימו לב שאפליקציית הגלריה מסתיר לחלוטין את שורת המצב; הוא לא מעומעם). שימו לב שסרגל הניווט של התמונה) יש נקודות לבנות חלשות המייצגות את פקדי הניווט:

פסי מערכת

איור 1. פסי מערכת מעומעמים.

איור 2 מציג את אותה תמונת גלריה, אבל מוצגים בו סרגלי המערכת:

פסי מערכת

איור 2. פסי מערכת גלויים.

הצגת סרגלי הסטטוס וסרגל הניווט

אם רוצים להסיר באופן פרוגרמטי דגלים שהוגדרו עם setSystemUiVisibility(), יש לך אפשרות לעשות זאת ככה:

Kotlin

activity?.window?.decorView?.apply {
    // Calling setSystemUiVisibility() with a value of 0 clears
    // all flags.
    systemUiVisibility = 0
}

Java

View decorView = getActivity().getWindow().getDecorView();
// Calling setSystemUiVisibility() with a value of 0 clears
// all flags.
decorView.setSystemUiVisibility(0);