Android“无法找到类”错误

时间:2012-04-27 16:34:29

标签: android layout android-mapview arcgis

我是Android编程的新手,在Eclipse中处理项目。我尝试了第一个教程'HelloWorld',并得到了这个错误:

Could not find class 'com.esri.android.map.MapView', referenced from method com.esri.arcgis.android.samples.helloworld.HelloWorldActivity.onCreate 

是否必须有名为MapView的布局?如果是这样,我的项目中没有。你能否告诉我如何才能进入项目?

我还有项目中的所有源文件夹。即使是mapview,也不知道为什么会出现这种错误。我需要这个项目的帮助,我需要在几天内完成它,但我因为这个错误而陷入困境,无法继续。我在所有项目中都遇到了同样的问题,尽管我尝试过的每一个都是ArcGIS提供的样本。

以下是代码:

package com.esri.arcgis.android.samples.helloworld;

import android.app.Activity;
import android.os.Bundle;


import com.esri.android.map.MapView;
import com.esri.android.map.ags.ArcGISTiledMapServiceLayer;


public class HelloWorldActivity extends Activity {
MapView map = null;

/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // Retrieve the map and initial extent from XML layout
    map = (MapView)findViewById(R.id.map);
    // Add dynamic layer to MapView
    map.addLayer(new ArcGISTiledMapServiceLayer("" +
    "http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"));

}

protected void onPause() {
    super.onPause();
    map.pause();
}

protected void onResume() {
    super.onResume();
    map.unpause();
}

}

5 个答案:

答案 0 :(得分:2)

以下内容适用于适用于Android 1.1.1的ArcGIS Runtime SDK,但也可能适用于其他版本的ArcGIS Runtime SDK:

  1. 右键单击您的HelloWorld项目并选择Properties
  2. 选择Java Build Path
  3. 在Java Build Page上,选择Libaries选项卡
  4. 确保存在ArcGIS for Android库
  5. 如果没有,请选择“添加库”并选择“ArcGIS for Android Library Container”
  6. 同样在Java Build Page上,选择Order and Export选项卡
  7. 确保“ArcGIS for Android”类已检查!! < - 这可能是您的问题

答案 1 :(得分:1)

我对样本有类似的问题。我不得不多次将ArcGIS库重新添加到项目中,因为Eclipse会不断删除它,或者在项目加载时将其归类为持久容器。

如果它被列为持久容器,我首先将其从构建路径中删除

然后为了修复它,我做了以下操作:右键单击PackageExplorer中的项目名称 - >点击构建路径 - >添加库 - >选择ArcGIS库,然后单击下一步

希望这有帮助。

答案 2 :(得分:0)

听起来你没有正确导入MapView,验证你在HelloWorldActivity.java中有这个导入:

import com.google.android.maps.MapView;

看着Hello mapview tutorial,看起来他们并没有提到这一点。

在eclipse中,您可以按Ctrl + Shift + O来更新丢失的导入。

答案 3 :(得分:0)

我想你可以看看:
Arcgis API for Android

答案 4 :(得分:0)

我也是一个新手,所以我不太确定,但我认为HelloWorldActivity应该扩展MapActivity而不是Activity。