0

私は osmdroid を使用して MAPNIK からの地図を表示し、地図の中心を特定の場所に設定していますが、アプリケーションはエラーなしで動作しますが、地図はコードで指定したポイントから離れた場所にあるため、設定しましたその方法で必要なコードからの場所(緯度と経度)をDDMSから送信したくない場合、私のコードは次のとおりです。

Double latitude = 15.610793;
Double longitude =  32.540152;
int lat = (int) (latitude * 1E6); 
int lng = (int) (longitude * 1E6); 
GeoPoint myPoint = new GeoPoint(lat, lng); 
// show first message
Toast toast = Toast.makeText(getBaseContext(),
    "latitude is :"+lat+"lng is: "+lng, Toast.LENGTH_LONG);
toast.show();


    mapView = (MapView) this.findViewById(R.id.mapView); 
    mapView.setTileSource(TileSourceFactory.MAPNIK); 
    mapView.setBuiltInZoomControls(true); 
    mapView.setMultiTouchControls(true);
    mapController = mapView.getController();
    mapController.setCenter(myPoint);
    mapController.setZoom(15);

また、エミュレーターにも次のエラーがあります。

[2012-06-16 00:05:21 - ddms] null
java.lang.NullPointerException
at com.android.ddmlib.Client.sendAndConsume(Client.java:573)
at com.android.ddmlib.HandleHello.sendHELO(HandleHello.java:142)
at com.android.ddmlib.HandleHello.sendHelloCommands(HandleHello.java:65)
at com.android.ddmlib.Client.getJdwpPacket(Client.java:672)
at com.android.ddmlib.MonitorThread.processClientActivity(MonitorThread.java:317)
at com.android.ddmlib.MonitorThread.run(MonitorThread.java:263)

[2012-06-16 00:05:21 - ddms] null
java.lang.NullPointerException
at com.android.ddmlib.Client.sendAndConsume(Client.java:573)
at com.android.ddmlib.HandleHello.sendHELO(HandleHello.java:142)
at com.android.ddmlib.HandleHello.sendHelloCommands(HandleHello.java:65)
at com.android.ddmlib.Client.getJdwpPacket(Client.java:672)
at com.android.ddmlib.MonitorThread.processClientActivity(MonitorThread.java:317)
at com.android.ddmlib.MonitorThread.run(MonitorThread.java:263)

申し訳ありませんが、エラーは例外ではなく、私が言ったように、それはラベル付きのコンソールにあります:DDMSなので、アプリは正常に動作し、クラッシュしません

4

1 に答える 1

1

同様の問題に遭遇しました。次のステートメントの順序を逆にしてみてください。

mapController.setCenter(myPoint);
mapController.setZoom(15);

それが役立つことを願っています!

于 2012-08-20T23:56:27.420 に答える