0
我希望設置時間從模擬時鐘在Android應用程序。爲此,我重寫了Analogclock.java類並建立了Ontouchevent偵聽器。我跟着this method和this formula從獲得的座標計算小時和分針之間的角度。現在我可以把手移到一個新的位置。而且我也可以從中獲得針之間的新角度。這是相同的代碼:要確定時鐘之間的角度之間的時間已知在模擬時鐘android
case MotionEvent.ACTION_MOVE:
x = (int)event.getX();
y = (int)event.getY();
double dx = x - minuteRect.centerX();
double dy = -(y - minuteRect.centerY());
double inRads = Math.atan2(dy,dx);
if (inRads < 0)
inRads = Math.abs(inRads);
else
inRads = 2*Math.PI - inRads;
double newDegree = Math.toDegrees(inRads);
if(isMove()){
setAngle(newDegree);
invalidate();
}
我現在想組,其中針移動的時間。 有沒有什麼辦法可以從座標或從兩針之間的角度來計算時間?
但我只會有兩個針之間的角度。爲了得到小時的角度,我看到的公式是 - 1/2(60 * Hr + Min)。但在我的情況下,我不會有更新的會議記錄。我只會從上面的代碼針和coordiantes之間的角度與時鐘 - (x,y) – JaveDeveloper 2012-01-06 03:32:57
在你的情況,你是怎麼知道PI/2是微小的角度?和PI作爲小時角? – JaveDeveloper 2012-01-06 03:42:29
如果您將正Y軸作爲參考(即12點鐘),並且如果它是6:15,則時針的角度爲pi,並且分針的角度爲PI/2。 – 2012-01-06 07:43:36