我目前正在制作一个mapview,我想显示用户的位置,如google的Latitude(罗盘方向); 我看到了几个主题,但没有一个能为我的查询提供足够的解决方案。 你有教程或例子吗?
答案 0 :(得分:1)
使用MyLocationOverlay
。示例代码:
public MyMapActivity extends MapActivity {
private MyLocationOverlay myLocationOverlay;
private MapView mapView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_map_layout);
mapView = (MapView)findViewById(R.id.map_view);
myLocationOverlay = new MyLocationOverlay(this, mapView);
mapView.getOverlays().add(myLocationOverlay);
}
@Override
protected void onResume() {
super.onResume();
myLocationOverlay.enableCompass();
myLocationOverlay.enableMyLocation();
}
@Override
protected void onPause() {
super.onPause();
myLocationOverlay.disableCompass();
myLocationOverlay.disableMyLocation();
}
@Override
protected boolean isRouteDisplayed() {
return false;
}
}
答案 1 :(得分:0)
这个答案可能是通过旋转图标来解决您的问题:https://stackoverflow.com/a/8712727/1127492
您还可以考虑为8(或16)个主方向准备8(或16)个(小!)图标,并根据方位/ 8(分别为/ 16)选择图标。
答案 2 :(得分:0)
以防有人再遇到这个问题。
首先,这需要LocationListener
和SensorEventListener
。 Here you can find more details of how to use it in this scope.
无论如何,Android Google Maps V2 Api
部分地解决了这个问题,显示一个箭头指示您的方向,但只有当设备正在移动时,才会显示一个点。