Jun*_*per 9 android google-maps google-maps-api-2 android-animation
我想在Google地图视图中添加一个动画圆圈,类似于您在此图片上看到的圆圈.

圆圈应从中心脉动到最大半径,表示当前用户的位置和搜索区域.
这是相关的代码块
Circle circle = mMap.addCircle(new CircleOptions()
.center(new LatLng(lat, lon))
.strokeColor(Color.CYAN).radius(1000));
valueAnimator = new ValueAnimator();
valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator valueAnimator) {
float animatedFraction = valueAnimator.getAnimatedFraction();
circle.setRadius(animatedFraction * 1000);
circle.setStrokeWidth(1 + animatedFraction * 7);
}
});
Run Code Online (Sandbox Code Playgroud)
使用此代码,我只能看到没有任何动画的静态圆形笔划.
任何帮助将不胜感激.提前致谢.
Ahm*_*eim 29
简单:)
final Circle circle = MAP.addCircle(new CircleOptions().center(EGYPT)
.strokeColor(Color.CYAN).radius(100));
ValueAnimator vAnimator = new ValueAnimator();
vAnimator.setRepeatCount(ValueAnimator.INFINITE);
vAnimator.setRepeatMode(ValueAnimator.RESTART); /* PULSE */
vAnimator.setIntValues(0, 100);
vAnimator.setDuration(1000);
vAnimator.setEvaluator(new IntEvaluator());
vAnimator.setInterpolator(new AccelerateDecelerateInterpolator());
vAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator valueAnimator) {
float animatedFraction = valueAnimator.getAnimatedFraction();
// Log.e("", "" + animatedFraction);
circle.setRadius(animatedFraction * 100);
}
});
vAnimator.start();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5317 次 |
| 最近记录: |