안드로이드 카카오 맵 2개 이상 사용 시 렌더뷰 겹칠 때 뷰가 사라질 상황에서 카카오 맵이 나타나는 오류

current version : com.kakao.maps.open:android:2.12.13

안녕하세요, 카카오 맵으로 개발 중 한가지 문제가 발생하여 문의드립니다.

카카오 맵을 다르게 두개 이상 생성, 사용하는 경우 랜더링 뷰(surfaceView)가 겹쳤을 때, 제한된 Viewgroup 밖에서 카카오맵이 나타납니다.

렌더링 부분이 공유가 되고 있어서 그런 것 같아 보이는데요, 제너럴한 이슈인 것 같습니다…

여러가지 시도해보았지만, view 크기를 동적으로 줄이는 방법 외엔 방법이 없는 것 같은데, 동적으로 줄이더라도 맵 위치를 모두 계산해서 유지해야 하기 때문에 해결할 수 없는 상황입니다.

영상 첨부했으니 확인 부탁드립니다.
(영상 설명, 랜더링 뷰가 겹쳤을 때 카카오맵을 보이기 위한 영상으로, 바깥 맵은 좌측에서 400dp 정도만 view크기로 지정하였습니다. bottomSheet에는 scroll을 할 수 있도록 아래 빈 LinearLayout을 길게 만들어둔 상황입니다.)

@kb6912
SurfaceView는 동작이 일반적인 뷰와는 다릅니다. SurfaceView는 개념상 아래 그림과 같이 동작합니다. SurfaceView의 영역이 겹칠 경우, surfaceView의 zOrder에 따라서 순서가 결정되며 겹쳐 그려집니다.


윈도우에 구멍을 뚫고 surfaceView의 내용이 그려지는 형태이기 때문에 각각의 surfaceView가 view와 sheet에 구멍을 뚫고 최종 View에 블렌딩 되고, 이 블렌딩 되는 영역이 겹쳤기 때문에 영상에서와 같은 문제가 발생한다고 보시면 됩니다.
기본적으로 surfaceView 영역이 중첩되는 형태의 구성은 권장하지 않으니 다른 형태의 구현을 고민해 보시는 것이 적절할 것 같습니다.

현재로서는 방법이 없다는 말씀이시군요…

혹시 TextureView로 지원할 계획은 없으실까요?

@kb6912 TextureView 지원 계획은 아직 없습니다.