اگر برنامه شما حاوی کد Compose و View است، ممکن است لازم باشد بهطور صریح مشخص کنید که هرکدام باید از کدام تورفتگیهای سیستم استفاده کنند و مطمئن شوید که تورفتگیها به نماهای همنیا ارسال میشوند.
لغو کردن درجهای پیشفرض
وقتی صفحهنمایش شما هم کد Views و هم کد Compose را در یک سلسلهمراتب دارد، ممکن است لازم باشد تورفتگیهای پیشفرض را لغو کنید. دراینصورت، باید صریحاً مشخص کنید که کدامیک باید از حاشیهها استفاده کند و کدامیک باید آنها را نادیده بگیرد.
برای مثال، اگر بیرونیترین چیدمان شما چیدمان Android View است، باید
از تورفتگیها در سیستم View استفاده کنید و آنها را برای Compose نادیده بگیرید.
یا اگر بیرونیترین چیدمان شما یک composable است، باید از
درجها در Compose استفاده کنید و AndroidView composables را بهطور مناسب پد کنید.
بهطور پیشفرض، هر ComposeView همه درجها را در سطح مصرف WindowInsetsCompat مصرف میکند. برای تغییر این رفتار پیشفرض،
AbstractComposeView.consumeWindowInsets
را روی false تنظیم کنید.
ارسال درج سازگار با نسخه قدیمی برای نماها
اگر برنامهتان حاوی کد Views است، ممکن است لازم باشد تأیید کنید که تورفتگیها در دستگاههای دارای Android 10 (سطح API ۲۹) یا پایینتر به نماهای همنیا ارسال میشوند. برای اطلاعات بیشتر، راهنمای «نماهای» لبهبهلبه را ببینید.
نمادهای نوار سیستم
Calling enableEdgeToEdge ensures system bar icon colors update when the device
theme changes.
هنگام رفتن به حالت تمامصفحه، ممکن است لازم باشد رنگ نماد نوار سیستم را بهصورت دستی بهروز کنید تا با پسزمینه برنامهتان تضاد داشته باشد. برای مثال، برای ایجاد نمادهای روشن در نوار وضعیت:
کاتلین
WindowCompat.getInsetsController(window, window.decorView) .isAppearanceLightStatusBars = false
جاوا
WindowCompat.getInsetsController(window, window.getDecorView()) .setAppearanceLightStatusBars(false);