창 인셋 내에 앱 배치

Compose 방법 사용해 보기
Jetpack Compose는 Android에 권장되는 UI 도구 키트입니다. Compose에서 WindowInsets를 사용하는 방법을 알아봅니다.

그림 1. 상태 표시줄과 탐색 메뉴로 통칭하여 시스템 표시줄이라고 합니다.

기본적으로 앱은 상단의 상태 표시줄 아래와 하단의 탐색 메뉴 위에 배치됩니다. 상태 표시줄과 탐색 메뉴를 통칭하여 시스템 표시줄이라고 합니다. 시스템 표시줄은 일반적으로 알림 표시, 기기 상태 통신, 기기 탐색에만 사용되는 영역입니다. 그러나 이러한 영역에 콘텐츠를 표시하도록 앱을 구성할 수 있습니다.

앱과 시스템 UI가 표시되는 영역 간의 중첩은 창 인셋의 한 가지 예입니다. 창은 앱이 시스템 UI와 교차할 수 있는 화면 부분을 나타냅니다. UI의 이러한 부분과 교차하면 콘텐츠 위에 표시할 수도 있지만 앱에 시스템 동작에 관한 정보를 제공할 수도 있습니다.

다음과 같은 유형의 창 인셋을 사용할 수 있습니다.

  • 앱은 창을 확장하여 전체 화면으로 확장하고 시스템 표시줄 뒤에 콘텐츠를 더 넓은 화면으로 그릴 수 있습니다.

  • 영화나 이미지와 같은 콘텐츠를 표시하는 앱은 몰입도 높은 환경을 위해 일시적으로 시스템 표시줄을 숨길 수 있습니다. 시스템 표시줄을 수정하기 전에 사용자의 요구와 기대치를 신중히 고려하세요. 시스템 표시줄은 사용자에게 기기를 탐색하고 상태를 확인하는 표준 방법을 제공하기 때문입니다.

  • 디스플레이 컷아웃은 기기 전면의 센서를 위한 공간을 제공하기 위해 디스플레이 표면으로 확장되는 일부 기기의 영역입니다. 앱은 중요한 콘텐츠가 컷아웃 영역과 겹치지 않도록 위치를 쿼리하여 디스플레이 컷아웃을 지원할 수 있습니다.

  • 키보드 전환은 창 인셋이 동적으로 업데이트되는 일반적인 예입니다. 앱은 현재 키보드 상태를 관찰하고, 프로그래매틱 방식으로 상태를 전환하고, 창 인셋의 애니메이션을 지원하고, 키보드 전환 간에 앱 콘텐츠가 매끄럽게 애니메이션 처리되도록 할 수 있습니다.