Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在AppCompativity中调用mapfragment_Java_Android_Android Fragments_Google Maps Api 3_Supportmapfragment - Fatal编程技术网

Java 在AppCompativity中调用mapfragment

Java 在AppCompativity中调用mapfragment,java,android,android-fragments,google-maps-api-3,supportmapfragment,Java,Android,Android Fragments,Google Maps Api 3,Supportmapfragment,我试图在片段寻呼机的活动中使用谷歌地图,因此地图位于寻呼机后面,并且仍然能够与之交互,但无论我做什么,我都会得到空异常 我尝试使用SupportMapFragment,如下所示: SupportMapFragment mapFragment = ((SupportMapFragment) getChildFragmentManager().findFragmentById(R.id.Map)); mapFragment.getMapAsync(this); 但是无法解析getC

我试图在片段寻呼机的活动中使用谷歌地图,因此地图位于寻呼机后面,并且仍然能够与之交互,但无论我做什么,我都会得到空异常

我尝试使用SupportMapFragment,如下所示:

SupportMapFragment mapFragment = ((SupportMapFragment) getChildFragmentManager().findFragmentById(R.id.Map));
        mapFragment.getMapAsync(this);
但是无法解析getChildFragmentManager,因为我想它是一个
AppCompatActivity

还有别的办法吗?可能吗?谢谢。

请尝试动态添加它

        MapFragment mMapFragment = MapFragment.newInstance();
        FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
        fragmentTransaction.add(R.id.llMapContainer, mMapFragment, "map");
        fragmentTransaction.commit();
或者你可以得到这样的地图片段

        mapFragment = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map));
        if (mapFragment != null) {
            mapFragment.getMapAsync(new OnMapReadyCallback() {
                @Override
                public void onMapReady(GoogleMap map) {
                   loadMap(map);
                }
           });
        }

尝试动态添加它

        MapFragment mMapFragment = MapFragment.newInstance();
        FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
        fragmentTransaction.add(R.id.llMapContainer, mMapFragment, "map");
        fragmentTransaction.commit();
或者你可以得到这样的地图片段

        mapFragment = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map));
        if (mapFragment != null) {
            mapFragment.getMapAsync(new OnMapReadyCallback() {
                @Override
                public void onMapReady(GoogleMap map) {
                   loadMap(map);
                }
           });
        }

只需更改为getSupportFragmentManager(),只需更改为getSupportFragmentManager(),谢谢!我动态地做了,做得非常好:谢谢!我做得很有活力,而且做得很好:D