Search in sources :

Example 1 with AnimationBuilder

use of com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView.AnimationBuilder in project subsampling-scale-image-view by davemorrissey.

the class AnimationActivity method onClick.

@Override
public void onClick(View view) {
    if (view.getId() == id.next) {
        position++;
        updateNotes();
    } else if (view.getId() == id.previous) {
        position--;
        updateNotes();
    } else if (view.getId() == id.play) {
        PinView pinView = (PinView) findViewById(id.imageView);
        Random random = new Random();
        if (pinView.isReady()) {
            float maxScale = pinView.getMaxScale();
            float minScale = pinView.getMinScale();
            float scale = (random.nextFloat() * (maxScale - minScale)) + minScale;
            PointF center = new PointF(random.nextInt(pinView.getSWidth()), random.nextInt(pinView.getSHeight()));
            pinView.setPin(center);
            AnimationBuilder animationBuilder = pinView.animateScaleAndCenter(scale, center);
            if (position == 3) {
                animationBuilder.withDuration(2000).withEasing(SubsamplingScaleImageView.EASE_OUT_QUAD).withInterruptible(false).start();
            } else {
                animationBuilder.withDuration(750).start();
            }
        }
    }
}
Also used : Random(java.util.Random) PointF(android.graphics.PointF) AnimationBuilder(com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView.AnimationBuilder) PinView(com.davemorrissey.labs.subscaleview.sample.extension.views.PinView)

Aggregations

PointF (android.graphics.PointF)1 AnimationBuilder (com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView.AnimationBuilder)1 PinView (com.davemorrissey.labs.subscaleview.sample.extension.views.PinView)1 Random (java.util.Random)1