Остановить вращение изображения, когда оно находится на 0 или 180 градусов - PullRequest
1 голос
/ 17 июня 2020

Я вращаю изображение, применяя onTouchListener на image-view. Все работает нормально, но я хочу остановить вращение изображения, когда оно достигнет 0 или 180 градусов (горизонтальный центр).

Вот пример кода, который я использую для поворота изображения

     ImageView view = (ImageView) v;                                                                
       if (mode == ZOOM)
            {
            float newDist = spacing(event);
                if (newDist > 5f) {
                    matrix.set(savedMatrix);
                    float tScale = newDist / oldDist;
                    matrix.postScale(tScale, tScale, mid.x, mid.y);
                }
                //Rotate the image
                if (lastEvent != null) {
                    newRot = rotation(event);
                    float r = newRot - d;
                    matrix.postRotate(r, view.getMeasuredWidth() / 2,
                            view.getMeasuredHeight() / 2);

                }                                                                                    
             }

                private float rotation(MotionEvent event) {
                    double delta_x = (event.getX(0) - event.getX(1));
                    double delta_y = (event.getY(0) - event.getY(1));
                    double radians = Math.atan2(delta_y, delta_x);
                    return (float) Math.toDegrees(radians);
                }

Этот код поворачивает изображение, но я хочу указать пользователю, что ваше изображение выровнено по center_horizontal.

Спасибо за любую помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...