1
我想知道如何跟蹤iPhone屏幕上的任何地方的觸摸,並仍然有UIButtons響應水龍頭。iPhone - 如何跟蹤觸摸並允許按鈕同時點擊?
我劃分了一個UIView,使其成爲全屏幕和層次結構中的最高視圖,並且覆蓋了它的pointInside:withEvent方法。如果我返回YES,我可以跟蹤觸摸屏上的任何位置,但按鈕不響應(可能是因爲視圖被指示處理和終止觸摸)。如果我返回NO,觸摸將通過視圖並按鈕響應,但我無法跟蹤觸摸。
我需要繼承UIButton還是通過響應鏈來實現?我究竟做錯了什麼?
- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event{
return NO;
}
//only works if pointInside:withEvent: returns YES.
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"began");
[self.nextResponder touchesBegan:touches withEvent:event];
}
//only works if pointInside:withEvent: returns YES.
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"end");
[self.nextResponder touchesEnded:touches withEvent:event];
}
謝謝,這是一個很好的開始。我已經成功開始跟蹤窗口中的觸摸,但想要將觸摸組傳遞給視圖控制器來處理觸摸事件。我是否需要@視圖或什麼?代碼,如果有人感興趣:http://pastie.org/924485 – 2010-04-17 12:05:19
得到了我正在尋找的行爲。我向代理添加了我想要的視圖,它將它們添加到加載時的窗口中。我在子類窗口中創建了一個視圖控制器的@class,因此當觸摸事件由窗口註冊時,我可以控制視圖的屬性。 – 2010-04-17 17:28:37