Android- Rotate image with single finger gesture

て烟熏妆下的殇ゞ 提交于 2019-12-30 01:39:12

问题


I want to know about How to rotate the bitmap image with single touch gestures.kindly help and suggest some solutions. I done scaling the bitmap with the help of

http://grishma102.blogspot.in/2013/10/drag-and-drop-functionality-to-move.html . Now I need to rotate the whole image while touch and rotate the resize button. How to acheive it?

Thanks in advance


回答1:


Check out my blogspot in which i have tried to implement the functionality of stretch the image on arrow click and also delete it, and also you can move the image on the screen using gesture.

Drag-Drop image Also check out the Demo of DragDropImage




回答2:


function that handles rotation with one finger, the main idea is to calculate the centerX and centerY of your view and taking into consideration the status bar height if you using one.

       @Override
       public boolean onTouch(View view, MotionEvent event) { 
         switch (action) {
                case MotionEvent.ACTION_UP:
                    break;
                case MotionEvent.ACTION_DOWN:

                    rotateX = event.getRawX();
                    rotateY = event.getRawY();

                    centerX = view.getX() + ((View) getParent()).getX() + (float) view.getWidth() / 2;

                    centerY = view.getY() + statusBarHeight + (float) view.getHeight() / 2;

                    break;

                case MotionEvent.ACTION_MOVE:

                    newRotateX = event.getRawX();
                    newRotateY = event.getRawY();

                    double angle = Math.atan2(event.getRawY() - centerY, event.getRawX() - centerX) * 180 / Math.PI;

                    view.setRotation((float) angle - 45);

                    rotateX = newRotateX;
                    rotateY = newRotateY;

            }
        }

        return true;
    }
};


来源:https://stackoverflow.com/questions/22906936/android-rotate-image-with-single-finger-gesture

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!