2013-04-22 7 views
26

Ich mache eine App, mit Google Maps, aber wenn ich versuche, "My-Location" -Taste hinzufügen, wie die Referenz sagt, funktioniert nicht ...My-Location Button von GoogleMaps v2 Android, nicht angezeigt

das ist, wie ich tun:

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     map = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap(); 

     locManager = (LocationManager)getSystemService(LOCATION_SERVICE); 
     providersList = locManager.getAllProviders(); 
     provider =locManager.getProvider(providersList.get(0)); 
     precision = provider.getAccuracy(); 
     req = new Criteria(); 
     req.setAccuracy(Criteria.ACCURACY_FINE);   
     inside = false; 

     map.getUiSettings().setMyLocationButtonEnabled(true); 

     buildPolygon(); 
     drawPolygon(); 
     startLocalization(); 
    } 

verwendete ich map.getUiSettings().setMyLocationButtonEnabled(true); wie Shows im Bezug von google. Ich weiß nicht, was passiert.

Antwort

49

Die myLocationButtonEnabled ist standardmäßig aktiviert und wird angezeigt, wenn der Layer setMyLocationEnabled aktiviert ist.

versuchen Sie dies:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    map = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap(); 

    // Add this line 
    map.setMyLocationEnabled(true); 

    locManager = (LocationManager)getSystemService(LOCATION_SERVICE); 
    providersList = locManager.getAllProviders(); 
    provider =locManager.getProvider(providersList.get(0)); 
    precision = provider.getAccuracy(); 
    req = new Criteria(); 
    req.setAccuracy(Criteria.ACCURACY_FINE);   
    inside = false; 

    //map.getUiSettings().setMyLocationButtonEnabled(true); 

    buildPolygon(); 
    drawPolygon(); 
    startLocalization(); 
} 

setMyLocationEnabledDocumentation
setMyLocationButtonEnabledDocumentation

+3

REallly !!! Oh Gott .. Facepalm! Vielen Dank ... es funktioniert perfekt wissen. Dieses MyLocationEnale wurde nicht angezeigt. Noch einmal Danke!!! – Shudy

+1

Geschieht den Besten von uns von Zeit zu Zeit :). Froh, dass ich helfen konnte. Viel Glück! – jnthnjns

+1

In meinem Fall hilft das Hinzufügen von setMyLocationEnabled (true) nicht, es sei denn, gleichzeitig wird der Standort von meinem Code abgerufen/gehört. Irgendwie löst dies den blauen Punkt auf der Karte aus. – Yar

2

nur map.setMyLocationEnabled(true); hinzufügen, nachdem Sie Ihre Karte erstellen

map = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap(); 

zu sein wie folgt

map = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap(); 

map.setMyLocationEnabled(true); 
Verwandte Themen