我想知道如何用android中的onTouch()事件順時針和逆時針旋轉圖像。以及如何通過onTouchListener找出它是順時針還是逆時針旋轉?由於如何在android中順時針和逆時針旋轉圖像?
2
A
回答
0
基本上你可以將你的形象自己的類,擴展視圖,並實現OnClickListener像這裏面:
public class CustomImageView extends View implements OnClickListener{
...
}
覆蓋您CustomImageView類中的方法的onDraw。旋轉可以通過旋轉畫布對象在onDraw內部實現。
第三,實現onClick以獲得點擊事件並根據您的需要進行輪換。
的基本佈局可能看起來像:
public class CustomImageView extends View implements OnClickListener{
public void onClick (View v){
// process click here
// invalidate after click processing in order to redraw
this.invalidate();
}
protected void onDraw(Canvas canvas) {
// draw your image here, might be bitmap or other stuff
// rotate canvas now, your logic on clockwise or
// counterclockwise rotation goes here
canvas.rotate(-90.0f, centerx, centery);
}
}
0
您可以嘗試使用此功能得到x和從MotionEvent對象的y值的旋轉。 在那裏,我仍然需要從給定的矢量x和矢量y的附加計算中找到方向。
private int calculateAngle(float GETX, float GETY) {
int direction = 1;
double tx = (int) GETX - object_center.x;
double ty = (int) GETY - object_center.y;
double angleInDegrees = Math.atan2(ty, tx) * 180/Math.PI;
int area = 0;
int ACTUAL_ANGLE = 270;
if (angleInDegrees < 0 && angleInDegrees < -90) {
// Need to add
// 270+angle degrees
// =================
ACTUAL_ANGLE += (int) (180 + angleInDegrees) * direction;
} else if (angleInDegrees < 0 && angleInDegrees > -90) {
// Need to add
// 90+angle degrees
// =================
ACTUAL_ANGLE = (int) (90 + angleInDegrees);
} else if (angleInDegrees > 0)
ACTUAL_ANGLE = 90 + (int) angleInDegrees;
return ACTUAL_ANGLE;
}
相關問題
- 1. 順時針/逆時針旋轉圖像
- 2. 順時針和逆時針方向旋轉圖像
- 3. 如何在jQuery中滾動/順時針和逆時針旋轉圖像?
- 4. CSS3 - 順時針旋轉比逆時針
- 5. 如何在android中(在指尖旋轉)順時針和逆時針旋轉圖像?
- 6. jQuery:以90度增量順時針/逆時針旋轉圖像?
- 7. 如何順時針和逆時針旋轉圓圈?
- 8. 使用c中的平移變換順時針和逆時針旋轉圖像#
- 9. JQuery-順時針旋轉div並逆時針旋轉
- 10. 如何順時針或逆時針旋轉圖像,以較短者爲準?
- 11. 如何順時針旋轉圖像?
- 12. 在android中順時針和逆時針方向旋轉一個正方形
- 13. 帶8弧的圓弧svg順時針和逆時針旋轉
- 14. 如何在android中執行順時針和逆時針手勢
- 15. Javascript旋轉 - 如何逆時針旋轉?
- 16. 使用javascript在div內順時針或逆時針旋轉圖像
- 17. 識別順時針或逆時針旋轉
- 18. 查找QDial是否順時針或逆時針旋轉
- 19. Flash CS4:順時針或逆時針旋轉對象
- 20. 旋轉陣列逆時針
- 21. 使用LibGDX順時針旋轉圖像
- 22. 順時針旋轉90度的圖像
- 23. Kineticjs - 順時針旋轉圖像90度
- 24. 如何在逆時針旋轉後重建圖像
- 25. 如何檢測cgaffinetransformrotate方法是順時針還是逆時針旋轉?
- 26. 試圖順時針旋轉90度的二維數組,但它會逆時針
- 27. Java PathIterator順時針或逆時針?
- 28. 目標C CATransform3DMakeRotation順時針/逆時針
- 29. 順時針旋轉線
- 30. 旋轉陣列順時針
使用旋轉動畫,也有很多很好的例子在那裏...... http://developer.android.com/reference/android/view/animation/RotateAnimation.html – testingtester 2012-04-22 08:54:46
謝謝,但我想知道在android中使用onTouch()事件順時針和逆時針旋轉圖像的方式 – secretlm 2012-04-22 09:01:17