如何在Android的Google Map中添加自定义标记

时间:2019-03-21 19:09:15

标签: android api google-maps

我正在使用Google Map,我想向我的应用添加自定义标记,我要添加的图像是可绘制的,其名称为“ fedfefe”,但我的应用崩溃了,如果使用默认标记,则工作正常

下面是我的代码:

package com.example.mapdemo;

import android.support.v4.app.FragmentActivity;
import android.os.Bundle;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.BitmapDescriptor;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;

 public class MapsActivity extends FragmentActivity implements 

 OnMapReadyCallback {
private GoogleMap mMap;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_maps);
    // Obtain the SupportMapFragment and get notified when the map is ready to be used.
    SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
            .findFragmentById(R.id.map);
    mapFragment.getMapAsync(this);
}


/**
 * Manipulates the map once available.
 * This callback is triggered when the map is ready to be used.
 * This is where we can add markers or lines, add listeners or move the camera. In this case,
 * we just add a marker near Sydney, Australia.
 * If Google Play services is not installed on the device, the user will be prompted to install
 * it inside the SupportMapFragment. This method will only be triggered once the user has
 * installed Google Play services and returned to the app.
 */
@Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;
    mMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE);
    // Add a marker in Sydney and move the camera
    LatLng pune= new LatLng(18.522866, 73.856057);

    mMap.addMarker(new MarkerOptions().position(pune).title("pune").snippet( "hello world").icon(BitmapDescriptorFactory.fromResource(R.drawable.fedfefe)));

    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(pune, 1 ));
     }
   }

0 个答案:

没有答案