Android 安卓谷歌地图。在移动“地图”摄影机之前,请等待位置初始化

Android 安卓谷歌地图。在移动“地图”摄影机之前,请等待位置初始化,android,google-maps-api-3,google-maps-android-api-2,mapactivity,Android,Google Maps Api 3,Google Maps Android Api 2,Mapactivity,我的应用程序中有以下代码(目的是获得GoogleMaps片段): 我希望在活动开始时使映射集中在当前位置,但是在方法onCreate()上,location变量始终为null,映射集中在我定义的位置 请问,如何确保在最终初始化位置时,地图将缩放到我的当前位置 Thx.您需要使用: 在onCreate()中 现在覆盖onMapReady()函数并使用以下代码: @Override public void onMapReady(GoogleMap googleMap) { mMap

我的应用程序中有以下代码(目的是获得GoogleMaps片段):

我希望在活动开始时使映射集中在当前位置,但是在方法onCreate()上,location变量始终为null,映射集中在我定义的位置

请问,如何确保在最终初始化位置时,地图将缩放到我的当前位置

Thx.

您需要使用:

在onCreate()中

现在覆盖
onMapReady()
函数并使用以下代码:

    @Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;
    mMap.setMyLocationEnabled(true);
    mMap.addMarker(new MarkerOptions().position(position_gps_track1).title("T1 - Thomas"));

    LatLng pos_gps;
    if (location == null) {
        pos_gps = position_gps;
    } else {
        pos_gps = new LatLng(location.getLatitude(), location.getLongitude());
    }
    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(pos_gps, 15));
    mMap.animateCamera(CameraUpdateFactory.zoomTo(15), 2000, null);
    mMap.getUiSettings().setCompassEnabled(true);
    mMap.getUiSettings().setZoomControlsEnabled(true);
    }
在XML中,您应该具有:

     <fragment
            android:id="@+id/map"
            android:name="com.google.android.gms.maps.SupportMapFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
您需要使用:

在onCreate()中

现在覆盖
onMapReady()
函数并使用以下代码:

    @Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;
    mMap.setMyLocationEnabled(true);
    mMap.addMarker(new MarkerOptions().position(position_gps_track1).title("T1 - Thomas"));

    LatLng pos_gps;
    if (location == null) {
        pos_gps = position_gps;
    } else {
        pos_gps = new LatLng(location.getLatitude(), location.getLongitude());
    }
    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(pos_gps, 15));
    mMap.animateCamera(CameraUpdateFactory.zoomTo(15), 2000, null);
    mMap.getUiSettings().setCompassEnabled(true);
    mMap.getUiSettings().setZoomControlsEnabled(true);
    }
在XML中,您应该具有:

     <fragment
            android:id="@+id/map"
            android:name="com.google.android.gms.maps.SupportMapFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

locationManager.getBestProvider(新标准(),true)
添加此项并尝试
(新标准()).setAccurance(标准.准确度\u FINE)
locationManager.getBestProvider(新标准(),true)添加此项并尝试
(新标准())。SetAccurance(标准.准确度\u FINE)
无法解析getSupportFragmentManager(),OnMaReady()不会重写。可能是我的类没有扩展正确的类???仍然不起作用,我的位置变量为null,即使是onMapReady。请检查我下面的答案好吗?无法解析getSupportFragmentManager()并且OnMaReady()不重写。可能是我的类没有扩展正确的类???仍然不起作用,我的位置变量为null,即使是onMapReady。请你核对我下面的答案好吗?
public class MapsActivity extends Activity implements LocationListener ,OnMapReadyCallback { }