2011-04-16 64 views
0

初學者的問題:iPhone:視圖和子視圖的層次結構

我在我的視圖中創建了一個子視圖。在那個子視圖中,我創建了另一個子視圖。每個子視圖填滿整個屏幕(480):

[self.view addSubview:aView]; // 320x480 
[aView addSubview:yetAnotherView]; // 320x480 

如果我理解這個正確的,這將導致以下層次:

  • TOP:yetAnotherView
  • MIDDLE:aView
  • BOTTOM :鑑於

到目前爲止好。我的問題是,我想要在這些視圖的頂部識別手勢(無論視圖可能是什麼......在我的情況下,它是另一種視圖,我想)。下面的命令將無法正常工作 - 我猜,因爲視圖是由子視圖隱藏:

UITouch *touch = [touches anyObject]; 
gestureStartPoint = [touch locationInView:self.view]; 

有沒有辦法來告訴它不應該採取self.view但編譯器無論大家認爲是所有其他意見頂部

任何幫助將非常感謝!


編輯:

我想我的問題是,我編輯子視圖是全屏UITextViews ...我想我可以覆蓋對他們的觸動?例如從右到左滑動應該可以工作,但從底部到頂部滑動(通常滾動uitextview - 除非我將其設置爲滾動無法)。

回答

0

如果使用touchesMoved:withEvent:方法方法

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

然後你可以使用這個:

UITouch *touch1 = [[event touchesForView:self.someView] anyObject]; 

希望這有助於。

+0

非常感謝。我只是意識到,問題是我試圖使用全屏UITextViews作爲子視圖...我想你不能在他們身上使用手勢,對吧? – 2011-04-16 20:34:39