بریدگی نمایشگر ناحیه ای در برخی دستگاه ها است که تا سطح نمایشگر گسترش می یابد. این امکان تجربه لبه به لبه را فراهم می کند و در عین حال فضایی را برای سنسورهای مهم در جلوی دستگاه فراهم می کند.
Android از بریدگیهای نمایشگر در دستگاههای دارای Android 9 (سطح API 28) و بالاتر پشتیبانی میکند. با این حال، سازندگان دستگاه میتوانند از بریدگیهای نمایشگر در دستگاههای دارای اندروید ۸.۱ یا پایینتر نیز پشتیبانی کنند.
این صفحه نحوه اجرای پشتیبانی از دستگاههای دارای برش را در 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
برای نوشتن، توصیه میکنیم از displayCutout
، safeContent
، یا safeDrawing
برای مدیریت ورودیهای برششده در اجزای سازنده خود استفاده کنید. این رویکرد به شما امکان میدهد در صورت لزوم به صفحهنمایش بریده شده احترام بگذارید، یا در جاهایی که لازم نیست، آن را نادیده بگیرید.
Canvas(modifier = Modifier.fillMaxSize().windowInsetsPadding(WindowInsets.displayCutout)) { drawRect(Color.Red, style = Stroke(2.dp.toPx())) }
نحوه نمایش محتوای خود را با برشها آزمایش کنید
مطمئن شوید که تمام صفحات و تجربیات برنامه خود را آزمایش کنید. در صورت امکان روی دستگاه هایی با انواع مختلف برش تست کنید. اگر دستگاهی با بریدگی ندارید، میتوانید پیکربندیهای برش معمولی را در هر دستگاه یا شبیهسازی دارای Android 9 یا بالاتر با انجام کارهای زیر شبیهسازی کنید:
- گزینه های برنامه نویس را فعال کنید.
- در صفحه گزینههای برنامهنویس ، به قسمت Drawing بروید و شبیهسازی نمایشگر با برش را انتخاب کنید.
- نوع برش را انتخاب کنید.
برای شما توصیه می شود
- توجه: وقتی جاوا اسکریپت خاموش است، متن پیوند نمایش داده می شود
- ورودی های پنجره در Compose
- اصلاح کننده های گرافیکی
- پاراگراف سبک