没有找到Android Studio Gradle的GoogleMap类

时间:2014-03-29 11:09:57

标签: android google-maps google-maps-api-3 google-play-services

我正在尝试在地图活动中创建一个新的GoogleMap对象,但系统似乎无法找到此类。

其他课程如GoogleMapOptions,但我似乎无法找到这一个,也许我的进口是错误的......

我想要实现的目标:在地图上显示标记

这是我的班级:

public class MapActivity extends FragmentActivity {

    private Location mCurrentLocation;
    private GoogleMap map; 

    public MapActivity(Location location) {
        mCurrentLocation = location;
    }

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

我的gradle文件:

apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.3"

    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile 'com.android.support:support-v4:19.+'
    compile 'com.google.android.gms:play-services:4.+'
}

我的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.SupportMapFragment" />

1 个答案:

答案 0 :(得分:1)

您无法创建新的GoogleMap对象。

当您创建SupportMapFragment时,您应该使用以下内容获取该片段中的GoogleMap对象:

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