2012-05-24 43 views
0

我从example做同样的事情,但Eclipse返回错误。代码如下:android mapView错误

package hello.google.map; 

import com.google.android.maps.MapActivity; 
import com.google.android.maps.MapView; 
import android.os.Bundle; 

public class MapsActivity extends MapActivity 
{  
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
    } 

    @Override 
    protected boolean isRouteDisplayed() { 
     return false; 
    } 
} 

这里是错误:

*

Description Resource Path Location Type 
MapActivity cannot be resolved to a type HelloGoogleMapsActivity.java /HelloGoogleMaps/src/hello/google/map line 7 Java Problem 
MapActivity cannot be resolved to a type HelloGoogleMapsActivity.java /HelloGoogleMaps/src/hello/google/map line 13 Java Problem 
The import com.google cannot be resolved HelloGoogleMapsActivity.java /HelloGoogleMaps/src/hello/google/map line 3 Java Problem 
The import com.google cannot be resolved HelloGoogleMapsActivity.java /HelloGoogleMaps/src/hello/google/map line 4 Java Problem 
The method isRouteDisplayed() of type MapsActivity must override a superclass method HelloGoogleMapsActivity.java /HelloGoogleMaps/src/hello/google/map line 18 Java Problem 
The method onCreate(Bundle) of type MapsActivity must override a superclass method HelloGoogleMapsActivity.java /HelloGoogleMaps/src/hello/google/map line 11 Java Problem 
The method setContentView(int) is undefined for the type MapsActivity HelloGoogleMapsActivity.java /HelloGoogleMaps/src/hello/google/map line 14 Java Problem 
The public type MapsActivity must be defined in its own file HelloGoogleMapsActivity.java /HelloGoogleMaps/src/hello/google/map line 7 Java Problem* 

为什么?我做错了什么?

+0

您是否选择了适当的Google API? –

回答

1

从外观上看,你可能会错过两件事。 要么你忘了以下添加到您的AndroidManifest.xml

<uses-library android:name="com.google.android.maps" /> 

或者,你正试图与一个普通的Android API,而不是特殊谷歌API版本的模拟器中运行它。您需要使用此Google API版本才能使用地图等功能。

如果你没有它,不用担心,你可以在SDK管理器中下载它。之后,只需创建一个新的AVD并将目标设置为目标API级别的Google API版本。

+0

必须可能这或ApiKey也许。 –

+0

不是API密钥。它的工作原理没有关键,它只是显示一张空白的地图。在他的情况下,它在显示地图之前崩溃,仅仅是因为它不知道MapActivity是什么,等等。 –

+0

我没有遗漏任何东西。清单和视图文件都可以。我也有API密钥。只有类 – jumancy

0

使用本您的setContentView后上创建

mapView = (MapView) findViewById(R.id.mapview); 
    mapView.setBuiltInZoomControls(true); 

,并把

<application android:icon="@drawable/icon" android:label="@string/app_name" > 
<uses-library android:name="com.google.android.maps" /> 


</app...> 
+0

在你的项目中使用google api构建目标 –

+0

它增加了缩放,它如何解决错误? – jumancy

+0

在清单文件中使用MapsActivity.java重命名您的Activity文件清理您的项目并再次运行它是HelloGoogleMapsActivity.java的问题在清单文件和src文件夹中使用相同的名称 –

0

你的错误日志说,文件名是HelloGoogleMapsActivity.java但你的类名是MapsActivity。你确定你做对了吗?尝试将类名改为HelloGoogleMapsActivity或将文件名改为MapsActivity。在这两种情况下更新您的清单。

根据您的链接,主要活动是MapsActivity,并在文件MapsActivity.java中定义。所以你可以将文件名改为MapsActivity.java来匹配这个例子。