我在我的應用程序中有一個虛擬鍵盤,帶有6個鍵,整個事物只是一個用UIImageView
實現的圖像。我確定對應於每個「關鍵」的圖像的準確的x和y座標,並且用下面的代碼來與鍵盤交互的用戶響應:尋找替代touchesMoved來檢測定義區域內的任何觸摸事件?
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch * touch = [[event allTouches] anyObject];
CGPoint point = [touch locationInView:touch.view];
if(point.y < 333 && point.y > 166 && point.x < 72 && point.x > 65)
{
NSLog(@"Key pressed");
}
//Repeat per key...
}
但是,我已認識到這個方法不是非常聰明,因爲改變手機視角(縱向到橫向)或更換設備會破壞我的x和y座標,並因此導致問題。
所以,我正在尋找一種替代方法來指定絕對的x和y值,並且一般使用touchesMoved。理想情況下,它將是一個具有特定設置的按鈕,如果它被輕敲,或者用戶將他們的手指拖入按鈕區域(即使速度很慢 - 我之前使用滑動檢測,並且需要太多的誇大的運動)。
是否可以設置一個按鈕來調用其方法,如果輕擊或者觸摸事件是否在按鈕之外開始,然後進入按鈕?如果不是,我的替代品是什麼?
謝謝SE!
你可能想'轉換'你的'點'爲GL' – LAMBORGHINI
看到我的答案,我把轉換點在那裏。你需要將手指拖到按鈕上才能做什麼? – LAMBORGHINI