单击Android按钮可在Google Map中获取当前位置

时间:2015-02-11 11:13:57

标签: android google-maps

我在我的设备中成功实现了地图。
但是现在我想添加功能
当我点击按钮然后我想在地图中获取当前位置。
我该怎么做?

enter image description here

4 个答案:

答案 0 :(得分:2)

您可以在按钮单击时添加侦听器。

Button btnMyLocation = (Button) findViewById(R.id.btnMyLocation); 
CameraUpdate cameraUpdate = null;

btnMyLocation.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Location loc = map.getMyLocation();
                if (loc != null) {
                    LatLng latLng = new LatLng(loc.getLatitude(), loc
                            .getLongitude());
                    cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, 17);
                    map.animateCamera(cameraUpdate);

                }

            }
        });
GPS的

您需要在清单文件

中具有以下权限
android.permission.ACCESS_FINE_LOCATION

这是代码:

final LocationManager manager = (LocationManager)context.getSystemService(Context.LOCATION_SERVICE );

  if ( !manager.isProviderEnabled( LocationManager.GPS_PROVIDER ) )
    Toast.makeText(context, "GPS is disable!", Toast.LENGTH_LONG).show(); 
  else
    Toast.makeText(context, "GPS is Enable!", Toast.LENGTH_LONG).show();

答案 1 :(得分:0)

只需点击该按钮即可启动位置更新侦听器。当新位置到达时,将mapObject中的相机(使用OnMapReady()方法)移动到带有动画的位置。

答案 2 :(得分:0)

在OnClick方法中,通过LocationManager获取当前GPS位置(纬度经度坐标)。关于howto的更多信息是here

答案 3 :(得分:0)

我有类似的麻烦,在我的情况下使用它:

map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(loc.getLatitude(), loc.getLongitude()), 4));

此致