2010-10-15 77 views
1

由於某種原因,我正在嘗試製作自己的自定義UIScrollView。問題是,是否有可能完全模仿UIScrollView的事件處理行爲,包括「延遲的內容觸及」和「可取消的內容觸動」?也就是說,自定義滾動視圖應該延遲處理事件,直到它可以確定滾動是否爲意圖,並且它還應該能夠稍後取消其子視圖的觸摸。問題如下:UIScrollView事件處理

1)hitTest:應該立即返回,所以我不能延遲觸摸擁有者的決心。
2)我們不能以編程方式稍後取消觸摸事件。沒有這樣的api。
3)我試圖覆蓋sendEvent:方法,但它沒有幫助。必須致電[super sendEvent:]纔會將事件發送至意外視圖。而且,當調用sendEvent:時,命中測試已經完成,我們不能在以後更改UITouch.view的值。

所以問題是,是否有可能在不使用UIScrollView的情況下自定義UIScrollView包括觸摸處理行爲?

在此先感謝!

+0

真正的問題是:值得這麼麻煩嗎? – 2011-06-14 21:16:49

回答

0

有一點需要記住的是,用於常規UIScrollViews的gestureRecognizers(平移和縮放)是私有屬性,直到iOS 5.0發佈。我想當他們公開時,你可以將它們轉移到你自己的滾動視圖中。