点标记缩放动画
功能场景
需要在地图上突出展示位置信息时可使用此功能。
Android
iOS

//mapopen-website-wiki.bj.bcebos.com/demos/AndroidVideos/Android点标记缩放动画.mp4

扫码体验
核心接口
类
接口
描述
icon(BitmapDescriptor icon)
设置marker图标
MarkerOptions
position(LatLng position)
设置 marker 覆盖物的位置坐标
setAnimation(Animation animation)
设置Marker动画
Marker
startAnimation()
开始播放动画
cancelAnimation()
取消动画
setDuration(long duration)
设置动画播放时间
ScaleAnimation
setRepeatCount(int repeatCount)
设置动画重复次数
setRepeatMode(RepeatMode repeatMode)
设置动画重复播放模式
onAnimationStart()
动画开始回调
onAnimationEnd()
动画结束回调
Animation.AnimationListener
onAnimationCancel()
动画取消回调
onAnimationRepeat()
动画重复回调
核心代码
1.创建动画
JAVA
/** * 创建缩放动画 */ private Animation createScaleAnimation() { ScaleAnimation scaleAnimation = new ScaleAnimation(1f, 2f, 1f); scaleAnimation.setDuration(2000); // 动画播放时间 scaleAnimation.setRepeatCount(2000); scaleAnimation.setRepeatMode(Animation.RepeatMode.RESTART); // 动画重复模式 scaleAnimation.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart() { } @Override public void onAnimationEnd() { } @Override public void onAnimationCancel() { } @Override public void onAnimationRepeat() { } }); return scaleAnimation; } mMarker.cancelAnimation(); mMarker.setAnimation(mAnimation); mMarker.startAnimation(); }
复制
深色
复制成功
2.初始化view,设置动画控制监听
JAVA
private void initView() { mMapView = findViewById(R.id.mapview); mAddAniLayout = findViewById(R.id.add_ani); mAddAniLayout.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mMarker.cancelAnimation(); mMarker.setAnimation(mAnimation); mMarker.startAnimation(); } }); mRemoveAniLayout = findViewById(R.id.remove_ani); mRemoveAniLayout.setOnClickListener(new View.OnClickListener() { /** * Called when a view has been clicked. * * @param v The view that was clicked. */ @Override public void onClick(View v) { mMarker.cancelAnimation(); mMarker.setScale(1.0f); } }); }
复制
深色
复制成功
更多功能