Maps API片段未在DrawerLayout中显示标记

时间:2016-07-30 21:48:05

标签: android android-fragments maps google-maps-markers

我是StackOverflow和Maps API的新手。我正在开发一个使用抽屉布局的应用程序。我想使用其中一个Drawer片段来显示Maps并使用Markers。

private SupportMapFragment mapFragment;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mapFragment = (SupportMapFragment)   
    getActivity().getSupportFragmentManager().findFragmentById(R.id.map);
}


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view =  inflater.inflate(R.layout.fragment_maps, container, false);
    mapFragment.getMapAsync(this);
    return view;
}

@Override
public void onMapReady(GoogleMap googleMap) {
     mMap = googleMap;

    // Add a marker in Sydney and move the camera
    LatLng sydney = new LatLng(-34, 151);
    mMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney"));

    mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
}

这是fragment_maps.xml

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.labcontrol.lca.view.MapsFragment">

    <fragment
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.labcontrol.lca.controller.MainActivity" />
</FrameLayout>

在官方指南中,他们使用Activity制作了一个示例,您可以看到我尝试在片段中执行此操作。有可能吗?

结果是:地图工作正常,但我看不到我创建的标记,我花了太多时间试图找出原因。 在手机上使用地图和更换相机时,唯一让我怀疑的是这个错误:

W / Google Maps Android API:不推荐使用GLHudOverlay; draw():no-op

发现这是一个常见问题,这是一个非常新的错误。有人知道如何启动和运行?代码有问题吗? 非常感谢

0 个答案:

没有答案