无法在android中显示地图

时间:2011-01-25 22:46:43

标签: android google-maps map

我有2项活动。在一项活动中,我有一个按钮。在该按钮的单击事件中,我想在新活动中打开一个地图。但我不知道为什么我单击按钮时出错。它说:

  

应用程序意外停止,请再试一次。

这是我的按钮点击事件:

Button btnDrive=(Button)findViewById(R.id.btnDrive);
btnDrive.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent myIntent=new Intent(v.getContext(),WebiMapActivity.class);
            startActivityForResult(myIntent,0);             
        }
    });

这是我的地图活动:

public class WebiMapActivity extends MapActivity{
    private MapView mapView;
    private MapController mapController;

    @Override
    protected boolean isRouteDisplayed() {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mapview);
        mapView = (MapView)findViewById(R.id.map_view);
        mapView.setStreetView(true);
        mapView.displayZoomControls(true);
        mapController=mapView.getController();  
    }
}

N.B:我在manifest.xml中拥有互联网权限。

3 个答案:

答案 0 :(得分:0)

另外,请确保manifest.xml文件的application元素中包含以下行:

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

但正如其他堆栈器所说,发布显示异常的logcat文件。

答案 1 :(得分:0)

确保您在XML文件中提到过您的地图API密钥。我认为这是你获得瓷砖而不是地图的原因。

答案 2 :(得分:0)

public class your_class extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    ...

    //setup button listener
    Button button = (Button)findViewById(R.id.button);
    startButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            startYourActivity();                
        }           
    });

    }
    private void startYourActivity() {
    Intent yourIntent = new Intent(this, secondActivity.class);
    startActivity(yourIntent);
}

希望这会对你有所帮助:)。