После setContentView элемент SurfaceView рисует под StreetViewPanoramaView
Впервые здесь. Я создаю приложение с StreetView. Хочу нарисовать маркеры сверху панорамы Street View.
Переключайтесь между макетами с помощью setContentView(). На макете с элементом "StreetViewPanoramaView extends FrameLayout" (com.google.android.gms.maps) у меня есть элемент "StreetOverlayView extends SurfaceView". С "Canvas canvas = surfaceHolder.lockCanvas();" я рисую растровое изображение на SurfaceView.
смотрите: SurfaceView рисует растровое изображение StreetView
после setContentView все время выглядит так: StreetView SurfaceView рисует растровое изображение
Я пробовал разные варианты: 1) сначала setContentView (макет с StreetViewPanoramaView) и растровое рисование сверху и хорошо выглядеть. После того, как я setContentView (другой макет) и снова setContentView (макет с StreetViewPanoramaView) - растровое изображение НЕ рисовать: (сверху - только под StreetViewPanoramaView.
2) сначала setContentView (другой макет) и после setContentView (макет с StreetViewPanoramaView) - растровое изображение НЕ рисуется: (сверху.
Я попытался "привести ChildToFront" с элементами в макете - не работает.
Как я могу вернуть SurfaceView с рисованием на холсте сверху?
1 ответ
У меня есть решение: поместите элемент "StreetOverlayView extends SurfaceView" в новый FrameLayout, и после setContentView я удаляю свой элемент из этого FrameLayout и снова добавляю.
frame1.removeView( markerView );
frame1.addView ( markerView );