안드로이드

안드로이드 BottomSheetDialogFragment landscape에서 이슈 해결하기

알통몬_ 2020. 9. 2. 12:17
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^


글쓴이 후원.

카카오뱅크 예금주 : 박성균

3333-03-4836828

 


BottomSheetDialogFragment 를 만드는 방법은 검색해보면

많이 나오니 만드는 방법은 넘어가겠습니다.

BottomSheetDialogFragment를 만들고 show()를 호출하여 보면

portrait 일 경우에는 아래 [사진1]처럼 정상적으로 나옵니다.


[사진1]


하지만 가로모드로 할 경우 아래 첨부한 [사진2] 처럼 비정상적으로 나옵니다.

[사진2]


이를 해결하기 위한 방법을 구글에 검색해보면 여러가지가 나오는데

가장 간단한 방법을 포스팅합니다.

커스텀한 BottomSheetDialogFragment의 onStart()를 오버라이딩하고

override fun onStart() {
super.onStart()
//바텀시트 가로모드에서 보기
val behavior = BottomSheetBehavior.from(requireView().parent as View)
behavior.state = BottomSheetBehavior.STATE_EXPANDED
}

위 처럼 작성해주시면 아래 첨부한 [사진3]처럼 정상적으로 동작하는 것을 확인할 수 있습니다.

[사진3]


이상입니다. 감사합니다.


반응형