Wie overlay GLSurfaceView über eine MapView in Android?
Ich möchte eine einfache Karte basierte Anwendung im android ,wo kann ich die Anzeige meiner aktuellen position.Statt überlagerung ein einfaches Bild auf die MapView zu vertreten die position, ich will überlagerung der GLSurfaceView auf die MapView. Aber ich weiß nicht, wie Sie diese erreichen. Gibt es eine Möglichkeit, das zu tun?. Bitte jemand die Lösung weiß und mir helfen.
- Hi Rajapandian, Hast du eine Lösung gefunden für deinen Beitrag ? weil, jetzt bin ich in der gleichen situation. können Sie mir bitte helfen ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
War ich klebte ein ähnliches problem, bis ich schaute auf die Unterlagen und stellte fest, dass
MapView
erstrecktViewGroup
, also die überlagerung einerGlSurfaceView
tatsächlich endet als ziemlich trivial.MapView.addView(...)
undMapView.LayoutParams
erlauben Sie einige sehr nützliche Dinge wie Ort, einView
zu einem bestimmtenGeoPoint
auf der Karte.Mehr Dokumentation: https://developers.google.com/maps/documentation/android/reference/com/google/android/maps/MapView.LayoutParams.html
Hier ist, was ich getan habe:
Plus auch tun, was die Lösung des oben genannten Staaten. Ich untergeordnetes GlSurfaceView, also mir sieht das etwas anders aus:
Müssen Sie zum erstellen der GLSurfaceView und seine EGLConfigChooser wie diese:
glSurfaceView.setEGLConfigChooser(8, 8, 8, 8, 16, 0);
dann legen Sie das format der Halter transluzent
glSurfaceView.getHolder().setFormat(PixelFormat.TRANSLUCENT);
hinzufügen und die GLSurfaceView und die MapView, um das Layout
setContentView(glSurfaceView);
addContentView(mapView, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));
schließlich in Ihrem renderer, den Sie brauchen, um die klare Farbe, so dass es transparent ist
gl.glClearColor(0, 0, 0, 0);