Ich habe ImageView, das sollte weg fliegen, wenn ich auf die Schaltfläche klicke. Zu diesem Zweck benutze ich ObjectAnimator, um die Eigenschaften TRANSLATION_Y und TRANSLATION_X zu animieren.So erstellen Sie kreisförmige Clip-Grenzen für ViewGroup
Ich muss kreisförmige Grenzen für übergeordnete meiner ImageView definieren, damit es korrekt wegfliegen.
Dazu verwende ich nächsten Code
public class CircleFrameLayout extends FrameLayout {
private Path mClipPath = new Path();
//Constructors
@Override
protected void onDraw(Canvas canvas) {
mClipPath.reset();
float radius = Math.min((float)getMeasuredWidth()/2f, (float)getMeasuredHeight()/2f) + 5;
mClipPath.addCircle((float)getMeasuredWidth()/2f, (float)getMeasuredHeight()/2f, radius, Path.Direction.CCW);
canvas.clipPath(mClipPath);
super.onDraw(canvas);
}
}
Aber nichts passiert. ImageView verwendet Rechteckgrenzen seiner übergeordneten und nicht kreisförmigen Grenzen.
Was ist das Problem?
Überschreibung 'draw', nicht' onDraw' – pskink
Hat leider nicht –
helfen, einige 'Log.d' Aussagen hinzufügen und die params für sicherstellen, dass' addCircle' sind korrekt – pskink