Android的谷歌地图卫星切换
问题描述:
我要添加按钮,将在地图视图中正常和卫星视图之间切换,我不断收到一个the application has stopped unexpectedly
错误Android的谷歌地图卫星切换
public class NewMapsActivity extends MapActivity
{
private MapView myMapView;
@Override
protected void onCreate(Bundle icicle)
{
super.onCreate(icicle);
setContentView(R.layout.main);
MapView myMapView = (MapView) findViewById(R.id.mapview);
Button mySatelliteButton = (Button)findViewById(R.id.c_button);
mySatelliteButton.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
SetSatellite();
}
});
myMapView.setBuiltInZoomControls(true);
}
private void SetSatellite()
{
if (myMapView.isSatellite())
myMapView.setSatellite(false);
else
myMapView.setSatellite(true);
}
@Override
protected boolean isRouteDisplayed()
{
return false;
}
}
答
如果一切赋予的权利,然后检查是否空指针异常发生在myMapview对象中。因为你已经在顶部声明,然后在onCreate内部使用MapView mymapView =(MapView)findViewById(R.id.mapview);所以当你在setStallite()中使用mymapview对象时,它只会使用在顶部声明的对象。所以试试这个
myMapView = (MapView) findViewById(R.id.mapview);
但你要声明myMapview顶部为MapView myMapview;
检查这个如果不是请在logcat中发布你的错误
这不是答案这是评论。 – Nikhil
对不起,我没有权限对问题发表评论。当他发布我会更新我的答案。 – deepa
我尝试了与我的代码不同的东西,它看起来像isSatellite()方法的java.lang.NullPointerException错误。 – ababzy