java - 如何在 Fragment 中使用 map

标签 java android android-fragments google-maps-android-api-2

我想使用扩展 fragment 在android fragment 中制作 map

这是我的代码: map 不出现,系统强制关闭

  @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        View view =  inflater.inflate(R.layout.gmaps, container, false);

        SupportMapFragment mapFragment = ((SupportMapFragment) getActivity().getSupportFragmentManager() .findFragmentById(R.id.map));
        mapFragment.getMapAsync((OnMapReadyCallback) this.getActivity());

        btnFindPath = (Button) view.findViewById(R.id.btnFindPath);
        etOrigin = (EditText) view.findViewById(R.id.etOrigin);
        etDestination = (EditText) view.findViewById(R.id.etDestination);

        btnFindPath.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                sendRequest();
            }
        });

        return view;

请帮帮我,谢谢

最佳答案

你可以试试下面的代码:

 @Override
 public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    Log.i("onActivityCreated", "onActivityCreated");
    if(supportMapFragment==null){
        supportMapFragment = (SupportMapFragment)getChildFragmentManager().findFragmentById(R.id.map);

        supportMapFragment.getMapAsync(new OnMapReadyCallback() {
           @Override
             public void onMapReady(GoogleMap googleMap) {
             mGoogleMap = googleMap;

            loadMapAtPosition(googleMap, CAMERA_INITIAL_LATITUDE, CAMERA_INITIAL_LONGITUDE);
        }
    });
 }

.....

private void loadMapAtPosition(GoogleMap googleMap, double latitude,    double longitude){     googleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(latitude, longitude), 6.0f)); }

关于java - 如何在 Fragment 中使用 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37981869/

相关文章:

java - 手动触发 EJB Schedule 进行测试

java - Sling scheduler 定期作业——作业会重叠吗?

Android 选项卡 - 禁用点击时在选项卡之间切换

java - setText 不适用于纵向布局(android)

android - support-v4 中的 FragmentTransaction 没有 detach()?

java - 计算数字的幂总和时如何列出指数

java - 具有可配置凭据的 Spring WebServiceClient

android - Java(安卓): How to scale a drawable without Bitmap?

java - 无法使用 Google Places api 限制每个循环

java - 为什么 OnClickListener 接口(interface)没有实现并在 setOnClickListener() 方法中作为新接口(interface)传递?