您好我是Android编程和Eclipse的新手。我在以下程序中遇到错误“布局无法解析或不是字段”:
package com.esri.android.sample;
import android.app.Activity;
import android.os.Bundle;
import com.esri.android.map.MapView;
import com.esri.android.map.ags.ArcGISDynamicMapServiceLayer;
import com.esri.android.R;
public class HelloWorldMapActivity 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 ArcGISDynamicMapServiceLayer("" +
"http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"));
//Retrieve the non-configuration instance data that was previously returned.
Object init = getLastNonConfigurationInstance();
if (init != null) {
map.restoreState((String) init);
}
}
protected void onPause() {
super.onPause();
map.pause();
}
protected void onResume() {
super.onResume();
map.unpause();
}
}
这些错误显示在语句setContentView(R.layout.main);
和map = (MapView)findViewById(R.id.map);
我不知道为什么会出现这些错误。知道这个程序有什么问题吗?
答案 0 :(得分:1)
尝试清理并重建项目,R(主要资源)文件可能无法正常工作。
还要检查是否有一个名为main.xml的布局和一个具有id map的MapView。 并检查您是否导入了正确的R文件。
import com.esri.android.R;
这似乎很可疑。
答案 1 :(得分:0)
我认为你不需要使用这一行:
import com.esri.android.R;
bcoz你只需要在res>布局中添加main.xml 并且R.java自动包含在生成的java文件夹中。因此,您不需要使用包名称导入它。 mapview也是如此。
这有用吗?