-
[Android] fitSystemWindowsAndroid 2021. 8. 21. 16:27
Intro
개발을 하다가 뷰 하단에 빈 영역이 남는 현상이 있었다.
예를 들자면 아래와 같다.<androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent"> ... <FrameLayout android:id="@+id/frame" android:layout_width="0dp" android:layout_height="0dp" app:layout_constraintBottom_toTopOf="@id/b" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/a" /> </androidx.constraintlayout.widget.ConstraintLayout>
내가 생각한 예상 대로라면 FrameLayout 영역 또한 마찬가지로 A - B 영역 안에 잡혀야 하는데 아무리 해도
FrameLayout 하단의 영역이 B 의 Top 까지 오지 않는 현상이 있었다.
자세히 보니 FrameLayout 영역에 android:fitSystemWindows 라는 attribute가 적용이 되어 있었다.
이것이 무엇인고 찾아보니statusbar나 naivigationbar, Soft Key 같은 system windows 영역에 맞춰 뷰의 레이아웃이 적용하는 attribute 였다.
값이 true라면 system window 가 적용될 padding 이 적용 되는데, 나는 아마 해당 padding 영역을 보며 왜 안 없어지지 ? 🤔 라며 고민을 했었다.
Conclusion즉 android:fistYstemWindows = true/ false
해당 속성은 뷰가 차지 할 수 있는 영역을 상태바, 소프트키 영역을 제외한 영역까지 확장해주는 역할을 해 준다.
Refhttps://developer.android.com/reference/android/view/View#attr_android:fitsSystemWindows
https://androidhuman.tistory.com/560
LIST'Android' 카테고리의 다른 글
[Android] ViewTreeObserver (0) 2021.01.03 [Android] Android Context (0) 2020.10.04 [Android] RecyclerView DiffUtil (0) 2020.05.24 [Android] Android Stack 관리 / 확인하기 (0) 2020.02.16 [Android]FragmentLifeCycle (0) 2019.07.10