2014-09-12 78 views
0

我尝试在我的谷歌地图上做一个标记。 我跟着一个教程,但是当我把setBuiltInZoomControls()出现一个错误的消息“方法setBuiltInZoomControls()是未定义的类型MapView”。 如何解决问题? mainactivity.java:setBuiltInZoomControls()方法未定义为MapView类型

package com.googlemaps; 

import android.os.Bundle; 
import android.view.Menu; 
import android.view.MenuItem; 

import com.google.android.gms.maps.MapView; 
import com.google.android.maps.MapActivity; 


public class MainActivity extends MapActivity { 

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

    MapView view= (MapView) findViewById(R.id.map); 
    view.setBuiltInZoomControls(true); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle action bar item clicks here. The action bar will 
    // automatically handle clicks on the Home/Up button, so long 
    // as you specify a parent activity in AndroidManifest.xml. 
    int id = item.getItemId(); 
    if (id == R.id.action_settings) { 
     return true; 
    } 
    return super.onOptionsItemSelected(item); 
} 

@Override 
protected boolean isRouteDisplayed() { 
    // TODO Auto-generated method stub 
    return false; 
} 
} 
Activity_main.xml: 

<?xml version="1.0" encoding="utf-8"?> 
<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/map" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:name="com.google.android.gms.maps.MapFragment" 
     /> 

回答

0

请尝试以下方法。确保你有谷歌播放服务

// Handle to Google maps 
     GoogleMap googleMap; 
    // Getting reference to the SupportMapFragment 
    SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); 

    // Getting GoogleMap object from the fragment 
    googleMap = mapFragment.getMap(); 

    // Changing the map type to hybrid view 
    googleMap.setMapType(GoogleMap.MAP_TYPE_HYBRID); 
    // Changing the map type to normal view 
    googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL); 
    // enable the zoom controls 
    googleMap.setBuiltInZoomControls(true) 
0

我发现了很多不正确和过时的答案这个问题,不妨发布什么对我有用。

private GoogleMap mMap = null; 


... 


@Override 
public void onMapReady(GoogleMap googleMap) { 
    mMap = googleMap; 
    mMap.getUiSettings().setZoomControlsEnabled(true); 
} 
相关问题