2016-04-20 13 views
0

Ich habe gekämpft, um die MapView nicht klickbar zu machen. Ich hoffe, dass auch jemand mit diesem Problem konfrontiert wurde.Google Maps öffnet nach dem Klicken auf MapView v2

Hier ist mein Code:

<com.google.android.gms.maps.MapView 
    android:id="@+id/map_header" 
    android:layout_width="fill_parent" 
    android:layout_height="90dp" 
    android:clickable="false" 
    android:longClickable="false" 
    map:liteMode="true" 
    map:mapType="normal" 
/> 

auch:

mMap.getUiSettings().setAllGesturesEnabled(false); 
mMap.getUiSettings().setMapToolbarEnabled(false); 
CameraPosition cameraPosition = new CameraPosition.Builder() 
      .target(userLocation) 
      .zoom(16) 
      .build(); 
mMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition)); 
mProgressBar.setVisibility(View.GONE); 

Dies geschieht nur, wenn ich Lite-Modus bin mit. Im normalen Modus ist es nicht anklickbar.

Vielen Dank im Voraus :)

Antwort

0

In Anbetracht, dass Sie es in einer Aktivität verwenden. Sie können die folgenden Schritte aus

public class MapActivity extends AppCompatActivity implements OnMapReadyCallback { 

    MapView mapView; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_map); 

     // Gets the MapView from the XML layout and creates it 
     mapView = (MapView) v.findViewById(R.id.map_header); 
     mapView.setClickable(false); 
     mapView.getMapAsync(this); 
    } 

    @Override 
    public void onMapReady(GoogleMap map) { 
     // Perform action on your map. E.g. Display marker 
    } 
} 
+0

GoogleMap keine setClickable Methode :(EDIT haben. Es wurde behoben, müssen Sie (false) setClickable auf dem mapView in onCreate, nicht in der GoogleMap in onMapReady – Ruben2112

+0

@ Ruben2112 Vielen Dank für Diese Korrektur habe ich im Vorbeigehen vorgeschlagen. Wie auch immer, korrigiert für zukünftige Verwendungszwecke. –

-1

Set mapView.setClickable(false) innerhalb getMapAsync Rückruf (onMapReady Methode).