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


Android תומך בחלקים חתוכים במסך במכשירים עם Android מגרסה 9 (רמת API 28) ומעלה. עם זאת, יצרני מכשירים יכולים גם לתמוך בחיתוכי מסך במכשירים עם Android בגרסה 8.1 ומטה.
בדף הזה מוסבר איך להטמיע תמיכה במכשירים עם חורים במסך ב-Compose, כולל איך לעבוד עם אזור החור – כלומר, המלבן מקצה לקצה על פני המסך שמכיל את החור.
מקרה ברירת מחדל
אפליקציות שמטרגטות את רמת ה-API 34 ומטה, או פעילויות שלא קוראות ל-enableEdgeToEdge
, לא יציגו את עצמן באזור החיתוך כברירת מחדל, אלא אם האפליקציה מוצגת בסרגל מערכת שמכיל את החיתוך של המסך.
אפליקציות שמטרגטות רמת API 35 ומעלה במכשירים עם Android 15 ומעלה, או פעילויות שקוראות ל-enableEdgeToEdge
, מציירות באזור החיתוך.
במילים אחרות, LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT
,
LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES
ו-LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER
מתפרשים כ-LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS
בחלונות לא צפים באפליקציות שמטרגטות רמת API 35 ומעלה במכשירים עם Android 15 ומעלה.
טיפול ידני במידע על חיתוך
צריך לטפל במידע על החלק החסר כדי למנוע מצב שבו האזור החסר מסתיר טקסט חשוב, אמצעי בקרה או רכיבים אינטראקטיביים שנדרשת בהם רגישות גבוהה למגע (יכול להיות שהרגישות למגע באזור החסר תהיה נמוכה יותר). כשמטפלים בחלקים חתוכים, לא כדאי להגדיר קידוד קשיח לגובה של סרגל הסטטוס, כי זה עלול לגרום לחפיפה או לחיתוך של התוכן. במקום זאת, אפשר לטפל בחלקים החסרים באחת מהדרכים הבאות:
שימוש ב-
WindowInsets.displayCutout
, ב-WindowInsets.safeContent
או ב-WindowInsets.safeDrawing
גישה לאובייקט
Path
של הגזרה באמצעותLocalView.current.rootWindowInsets.displayCutout
לגבי Compose, מומלץ להשתמש ב-displayCutout
, ב-safeContent
או ב-safeDrawing
כדי לטפל בתוספות של חיתוך ברכיבים הניתנים להרכבה. הגישה הזו מאפשרת לכם להשתמש ברווח הפנימי של החלק החסר במסך במקומות שבהם זה נדרש, או להתעלם ממנו במקומות שבהם זה לא נדרש.
Canvas(modifier = Modifier.fillMaxSize().windowInsetsPadding(WindowInsets.displayCutout)) { drawRect(Color.Red, style = Stroke(2.dp.toPx())) }
מומלץ עבורך
- הערה: טקסט הקישור מוצג כש-JavaScript מושבת
- שוליים פנימיים של חלונות בכתיבת אימייל
- משני גרפיקה
- עיצוב פסקה