Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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
Android SupportMapFragmentManager未解析_Android_Android Fragments_Supportmapfragment - Fatal编程技术网

Android SupportMapFragmentManager未解析

Android SupportMapFragmentManager未解析,android,android-fragments,supportmapfragment,Android,Android Fragments,Supportmapfragment,我正在尝试在片段内创建SupportMapFragment..出现以下错误: 类型MapFragment的方法SupportFragmentManager()未定义 我的代码如下: import com.google.android.gms.maps.SupportMapFragment; import com.google.android.gms.maps.GoogleMap; import android.os.Bundle; import android.support.v4.app.Fr

我正在尝试在片段内创建SupportMapFragment..出现以下错误:
类型MapFragment的方法SupportFragmentManager()未定义

我的代码如下:

import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.GoogleMap;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;

public class MapFragment extends Fragment{

     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
       { 
         View v = inflater.inflate(R.layout.fragment_map_view, container, false);
         FragmentManager fm = getFragmentManager();
         FragmentTransaction ft = fm.beginTransaction();
         DateTimeFragment datetime=new DateTimeFragment();
         ft.add(R.id.datetime_container_map, datetime);
         SupportMapFragment mapFragment = (SupportMapFragment)SupportFragmentManager().findFragmentById(R.id.map_fragment);
         return v;
       }

}

但是,SupportMapFragmentManager无法解析。这个问题的解决方案是什么?

除了kalyan pvs的答案之外,您的代码是错误的,应该如下所示:

 SupportMapFragment mapFragment = (SupportMapFragment)getFragmentManager().findFragmentById(R.id.map_fragment);
在您的问题中,您使用的方法
SupportFragmentManager()
并不存在。 方法
getSupportFragmentManager
在片段中不可用,但
getFragmentManager
将起作用。
我猜这是因为您的类已经扩展了Fragment的支持版本,因此
getFragmentManager
将自动返回FragmentManager的支持版本

用Commonware检查这两个答案,看是否有与您类似的问题。检查并确认


另外,确保在Properties->Java Build Path->Order and Export下检查了Android私有库。然后清理项目并检查问题是否得到解决。

是否添加了support v4库?我添加了以下内容:import android.support.v4.app.Fragment;导入android.support.v4.app.FragmentManager;导入android.support.v4.app.FragmentTransaction;事实上,com.google.android.gms.maps.SupportMapFragmenthi,正如您在我编辑的代码中看到的那样,我已经完成了这项工作。我之前已经导入了这个库。当我扩展FragmentActivity时,SupportMapFragmentActivity正在工作。但我希望将映射放在片段中。这就是为什么我将其更改为extends FragmentHi,实际上我已经完成了mapFragment=(SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.mapFragment);在另一个扩展FragmentActivity的类中。而且它工作得非常好。然而,当我做扩展片段时,它不起作用。我把它改成了你的建议,它解决了我的答案有点改变。只要使用getFragmentManager,您就会没事的。