青い点と精度の高い円はマップによって自動的に管理され、更新やシンボルの変更はできません。実際には、独自のLocationProviderを使用して自動的に管理されるため、利用可能な最良のロケーション解決が得られます(コードを書き換える必要はありません。mMap.setMyLocationEnabled(true);
を使用して有効にしてください)。
あなたはそれはあなたがこのような何かを書くことができます行動だモックとしたい場合は(あなたはmMap.setMyLocationEnabled(false);
をやって、私の場所層無効にする必要があります):
は
private BitmapDescriptor markerDescriptor;
private int accuracyStrokeColor = Color.argb(255, 130, 182, 228);
private int accuracyFillColor = Color.argb(100, 130, 182, 228);
private Marker positionMarker;
private Circle accuracyCircle;
@Override
protected void onCreate(Bundle savedInstanceState) {
// ...
markerDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.yourmarkericon);
}
@Override
public void onLocationChanged(Location location) {
double latitude = location.getLatitude();
double longitude = location.getLongitude();
float accuracy = location.getAccuracy();
if (positionMarker != null) {
positionMarker.remove();
}
final MarkerOptions positionMarkerOptions = new MarkerOptions()
.position(new LatLng(latitude, longitude))
.icon(markerDescriptor)
.anchor(0.5f, 0.5f);
positionMarker = mMap.addMarker(positionMarkerOptions);
if (accuracyCircle != null) {
accuracyCircle.remove();
}
final CircleOptions accuracyCircleOptions = new CircleOptions()
.center(new LatLng(latitude, longitude))
.radius(accuracy)
.fillColor(accuracyFillColor)
.strokeColor(accuracyStrokeColor)
.strokeWidth(2.0f);
accuracyCircle = mMap.addCircle(accuracyCircleOptions);
}
ので、このコードは、上記のデフォルトのに対し、青い点を更新することができますが青い点は更新されませんか?最後の場所がわかるだけですか? –
心配する必要はありません。 –