我正在尝试为绘制在画布上的圆圈设置动画:
Paint pCirclePink = new Paint();
pCirclePink.setColor(Color.parseColor("#ff0000"));
pCirclePink.setAntiAlias(true);
if (userPlaceBeacon != null){
c.drawCircle((float) userPlaceBeacon.getPlacement_x() + offsetX, (float) userPlaceBeacon.getPlacement_y() + offsetY, 30, pCirclePink);
Bitmap bmpUserDestination = ((BitmapDrawable) drawableUserMarker).getBitmap();
bmpUserDestination = Bitmap.createScaledBitmap(bmpUserDestination, 28, 28, false);
c.drawBitmap(bmpUserDestination, (float) userPlaceBeacon.getPlacement_x() + offsetX - 14, (float) userPlaceBeacon.getPlacement_y() + offsetY - 14, null);
}
c.save();
当调用'c.drawCircle'时,我希望圆圈有一个脉冲动画。
圆圈显示用户在平移地图上的当前位置(使用Glide库注入的位图)。
我遇到了麻烦,因为我在网上找到的大多数库/方法都来自View或ViewGroup类;而我正试图绘制一个泛泛且可扩展的BitMap。
以下是我正在使用的更多代码:
答案 0 :(得分:1)
有两种方法:
1)您可以通过在onDraw(Canvas canvas)方法中扩展View类和绘制圆来创建自己的自定义视图。要模仿脉冲动画,你必须调用postInvalidate方法一次又一次强制调用onDraw(Canvas画布)方法并绘制你的增加或减少的圆圈。
2)您可以使用简单的比例动画