2011-02-09 72 views

回答

0

只實現

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 

{ 

UITouch *touch = [[event allTouches] anyObject]; 

CGPoint touchLocation = [touch locationInView:self.view]; 

//your logic 

} 

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event 

{ 

//your logic 

} 


- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event 

{ 

//your logic 

} 

在你的代碼中..我認爲你可以想出其餘的想法。

+0

謝謝...但問題是如何實現它在應用程序委託class.I知道它可以在視圖控制器中完成。但是,在所有視圖控制器中編寫代碼將非常繁瑣 – illuminatus 2011-02-10 03:42:00

+0

應用程序委託不是UIResponder子類。屏幕上沒有代表的可視化表示,所以您的建議是沒有意義的。只要檢測窗口的觸摸,但你必須自己處理所有的觸摸。 – futureelite7 2011-02-10 06:42:03

1

應用程序委託不是響應者。我將繼承UIWindow,並重寫它的事件處理方法,因爲窗口首次獲取所有觸摸事件。

-1

與futureelilte7所說的相反,您的應用程序委託(在創建項目時生成)實際上是UIResponder的子類,並響應選擇器touchesBegan:withEvent:和其他類似選擇器。

- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    [super touchesBegan:touches withEvent:event]; 

    // your code here 
} 

這應該保留默認觸摸行爲,並給你一個機會做自己的自定義功能。

相關問題