برنامه خود را در داخل پنجره ها قرار دهید

روش Compose را امتحان کنید
Jetpack Compose جعبه ابزار UI توصیه شده برای اندروید است. با نحوه کار با WindowInsets در Compose آشنا شوید.

شکل 1. نوار وضعیت و نوار ناوبری که مجموعاً نوارهای سیستم نامیده می شوند.

همه برنامه ها را طوری چیدمان کنید که محتوای شما از لبه بالایی تا لبه پایینی صفحه نمایش کشیده شود. این رفتار پیش‌فرض در Android 15 (سطح API 35) شروع می‌شود. این بدان معنی است که قسمت های بالا و پایین برنامه شما در پشت نوار وضعیت و نوار ناوبری قرار گرفته اند. نوار وضعیت و نوار ناوبری با هم نوارهای سیستم نامیده می شوند. نوارهای سیستم مناطقی هستند که عموماً به نمایش اعلان‌ها، ارتباط وضعیت دستگاه و ناوبری دستگاه اختصاص دارند.

همپوشانی‌های بین برنامه شما و مناطقی که رابط کاربری سیستم در آن نمایش داده می‌شود، نمونه‌ای از ورودی‌های پنجره است که قسمت‌هایی از صفحه شما را نشان می‌دهد که برنامه شما می‌تواند با رابط کاربری سیستم تلاقی کند. تلاقی با این بخش‌های رابط کاربری می‌تواند به معنای نمایش بالای محتوا باشد، اما همچنین می‌تواند برنامه شما را در مورد حرکات سیستم مطلع کند.

انواع زیر پنجره در دسترس هستند.

  • به‌طور پیش‌فرض، انتخاب کنید که پنجره برنامه خود را گسترش دهید تا در کل صفحه گسترده شود و محتوای برنامه را لبه به لبه پشت میله‌های سیستم بکشید. برای جلوگیری از نمایش محتوای مهم و اهداف لمسی در پشت میله های سیستم، از افست استفاده کنید.

  • برنامه‌هایی که محتوایی مانند فیلم یا تصاویر را نمایش می‌دهند، می‌توانند به طور موقت نوارهای سیستم را برای تجربه‌ای فراگیرتر پنهان کنند . قبل از اصلاح نوارهای سیستم، نیازها و انتظارات کاربران خود را به دقت در نظر بگیرید، زیرا آنها روشی استاندارد برای پیمایش دستگاه و مشاهده وضعیت آن به کاربران ارائه می دهند.

  • بریدگی نمایشگر ناحیه‌ای در برخی دستگاه‌ها است که تا سطح نمایشگر گسترش می‌یابد تا فضایی را برای حسگرها در جلوی دستگاه فراهم کند. برنامه‌ها می‌توانند برش‌های نمایشگر را با جست‌وجو در موقعیت‌هایشان پشتیبانی کنند تا هیچ محتوای مهمی با ناحیه برش همپوشانی نداشته باشد.

  • انتقال صفحه کلید یک مثال رایج است که در آن ورودی های پنجره به صورت پویا به روز می شوند. برنامه‌ها می‌توانند وضعیت فعلی صفحه‌کلید را مشاهده کنند، حالت‌ها را به‌صورت برنامه‌ریزی تغییر دهند، انیمیشن‌ها را برای ورودی‌های پنجره پشتیبانی کنند، و محتوای برنامه را به‌طور یکپارچه بین انتقال‌های صفحه‌کلید متحرک کنند.