コード例 #1
0
 public void update() {
   if (isEnabled()) {
     myLocationBehavior.invalidate();
   } else {
     setVisibility(View.INVISIBLE);
   }
 }
コード例 #2
0
 @Override
 public void onAnimationUpdate(ValueAnimator animation) {
   float frac = animation.getAnimatedFraction();
   double latitude = fromLat + (toLat - fromLat) * frac;
   double longitude = fromLng + (toLng - fromLng) * frac;
   behavior.updateLatLng(latitude, longitude);
   updateOnNextFrame();
 }
コード例 #3
0
  public void setLocation(Location location) {
    if (location == null) {
      this.location = null;
      return;
    }

    this.location = location;
    myLocationBehavior.updateLatLng(location);
  }
コード例 #4
0
  public void setMyLocationTrackingMode(@MyLocationTracking.Mode int myLocationTrackingMode) {
    this.myLocationTrackingMode = myLocationTrackingMode;

    MyLocationBehaviorFactory factory = new MyLocationBehaviorFactory();
    myLocationBehavior = factory.getBehavioralModel(myLocationTrackingMode);

    if (myLocationTrackingMode != MyLocationTracking.TRACKING_NONE && location != null) {
      // center map directly if we have a location fix
      myLocationBehavior.updateLatLng(location);
      mapboxMap.moveCamera(CameraUpdateFactory.newLatLng(new LatLng(location)));
    }
    invalidate();
    update();
  }