eclipse/javaのmapViewで次の問題が発生します。
使用mapView.getOverlays()
するとエラーが発生します。
mapViewを解決できません
(MapViewを使用して)mapViewにローカル変数を使用しようとしましたが、クラッシュします。mapViewはどこかで宣言されていますか?
インポートしますcom.google.android.maps.MapView;
しかし、私はコードにアクセスできず、公式ドキュメントは役に立ちませんでした
MapViewを解決できないか、フィールドではないので、あまり役に立ちませんでした
SDKをインストールし、EclipseでGoogleAPIを確認しました
プロジェクトビルドターゲット
地図を問題なく表示できます
そして私のMainActivityはMapActivityを拡張します
これが完全なコードです
package com.example.test_app;
import java.util.List;
import android.app.Activity;
import com.example.test_app.MyLocation;
import com.example.test_app.MyLocation.LocationResult;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
import android.content.Context;
import android.location.Location;
import android.location.LocationProvider;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.Toast;
public class MainActivity extends MapActivity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
MapView mapView = (MapView) findViewById(R.id.mapview);
if (mapView == null)
Toast.makeText(getApplicationContext(),"mapview is null",Toast.LENGTH_SHORT).show();
else
mapView.setBuiltInZoomControls(true);
setContentView(R.layout.activity_main);
LocationResult locationResult = new LocationResult(){
@Override
public void gotLocation(Location loc){
Toast.makeText(getApplicationContext()," long : " +loc.getLongitude()+ " lat :"+ loc.getLatitude(),Toast.LENGTH_SHORT).show();
//List<Overlay> mapOverlays = mapView.getOverlays();
}
};
MyLocation myLocation = new MyLocation();
myLocation.getLocation(this, locationResult);
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}/* End of UseGps Activity */