我想在android中創建一個簡單的基於地圖的應用程序,在那裏我可以顯示我的當前位置。替代覆蓋MapView上的簡單圖像來表示位置,我想覆蓋MapView上的GLSurfaceView。但我不知道如何實現這一點。有沒有辦法做到這一點?請有人知道該解決方案可以幫助我。如何在Android中通過MapView覆蓋GLSurfaceView?
回答
您需要創建GLSurfaceView並設置其EGLConfigChooser這樣的:
glSurfaceView.setEGLConfigChooser(8, 8, 8, 8, 16, 0);
然後將支架的格式半透明
glSurfaceView.getHolder().setFormat(PixelFormat.TRANSLUCENT);
,並添加GLSurfaceView和MapView到佈局
setContentView(glSurfaceView);
addContentView(mapView, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));
終於在你的渲染器,你需要設置明確的顏色,所以它是透明的
gl.glClearColor(0, 0, 0, 0);
我應用了這種方法,但旋轉不適用。 Mapview保持穩定。 – 2011-01-18 15:51:39
我被困在一個類似的問題,直到我看了看文檔和意識到MapView
延伸ViewGroup
,所以覆蓋GlSurfaceView
實際上最終是相當微不足道的。
MapView.addView(...)
和MapView.LayoutParams
允許你一些非常有用的東西,比如將View
放置在地圖上的特定GeoPoint
上。
這裏就是我所做的:
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.mapview);
MapView map_view = (MapView) findViewById(R.id.map_view);
CustomGlView gl_view = new CustomGlView(this);
// This is where the action happens.
map_view.addView(gl_view, new MapView.LayoutParams(
MapView.LayoutParams.FILL_PARENT,
MapView.LayoutParams.FILL_PARENT,
0,0,
MapView.LayoutParams.TOP_LEFT
)
);
}
Plus還做上述國家的解決方案。我分類GlSurfaceView,所以我看起來略有不同:
public CustomGlView(Context context) {
super(context);
YourCustomGlRenderer renderer = new YourCustomGlRenderer();
setEGLConfigChooser(8, 8, 8, 8, 16, 0);
setRenderer(renderer);
getHolder().setFormat(PixelFormat.TRANSLUCENT);
// Have to do this or else
// GlSurfaceView wont be transparent.
setZOrderOnTop(true);
}
- 1. openstreetmap覆蓋android mapview
- 2. 在android中的GPolyline覆蓋MapView
- 3. Android:添加覆蓋到MapView?
- 4. 需要加強在Android MapView的覆蓋
- 5. 如何在android中的mapview上方移動覆蓋項?
- 6. GLSurfaceView over Google MapView
- 7. 覆蓋MapView中的onTouchEvent
- 8. 如何清除android中的mapview覆蓋圖?
- 9. MapView上的交通不是覆蓋
- 10. Android mapView:旋轉覆蓋項目
- 11. Android MapView - 箭頭覆蓋到目的地
- 12. MapView的覆蓋項目
- 13. MapView不顯示覆蓋
- 14. 從mapView刪除覆蓋圖
- 15. MapView ConcurrentModificationException當更新覆蓋
- 16. 如何從Android的MapView類更改覆蓋圖標?
- 17. 如何添加另一個覆蓋項目到android mapview
- 18. 通過CSS覆蓋
- 19. 如何覆蓋在Android的
- 20. 在Android的MapView中覆蓋圖的定位不準確
- 21. 如何在mapview中爲標記(覆蓋圖)生成動畫
- 22. 如何通過JUnit覆蓋塊捕獲
- 23. 如何通過instance_eval覆蓋類方法?
- 24. MKCircle覆蓋圖未在MapView上繪製
- 25. 在MapView上覆蓋圖像/地圖?
- 26. 在MapView上覆蓋靜態圖像
- 27. 在Java Swing中通過JLabel覆蓋JButton?
- 28. 覆蓋Android上現有視圖的透明GLSurfaceview?
- 29. Android MapView:在覆蓋圖上拖動時禁用平移
- 30. 合併覆蓋層以顯示在MKMapView(iOS)或MapView(android)上
嗨Rajapandian,你有沒有找到你的文章的解決方案?因爲,現在我處於相同的情況。你能幫我麼 ? – 2014-02-24 08:30:23