我目前工作的一個應用程序使用此結構:iPhone的UITextView手動registerring觸摸
我有一個視圖控制器,我們將調用MainViewController,用於處理應用程序的所有觸摸事件。 MainViewController具有一個實例變量,一個名爲canvasView的視圖。 canvasView具有一個名爲hiddenTextView的UITextView。
Theres其他不可見視圖和這樣的UITextView不是第一個註冊觸摸。
我如何獲得的UITextView在此配置註冊觸摸?具體來說,要從autoCorection框中進行選擇(實際上它是用於日語漢字選擇,但我認爲它有類似的機制)。
我已經試過:
[canvasView.hiddenTextView的touchesBegan:觸及withEvent:方法事件]
從MainViewController的方法的touchesBegan。我已經完成了觸摸開始,移動和結束。
我認爲它實際上爲我嘗試過的50次左右運行中的一次起作用,但我不知道發生了什麼變化。
我如何能得到這個工作任何想法?
的UITextView的是已經在該點的第一個響應者,雖然,鍵盤,一切都。 試過了,但仍然沒有:(。 我嘗試過使用[[self nextResponder] touchesBegan .....],它在其他情況下將觸摸向下傳遞到其他層,但不是這次 – kiyoshi 2009-08-12 02:05:11
另一個想法:仔細檢查你的UITextView框架和它的超級視圖,我有一個情況,我的控件清晰可見,但沒有觸及,結果問題是它的框架尺寸(0,0) 。看起來響應者不會觸摸,除非觸摸在他們的框架中。 – Tyler 2009-08-12 03:09:50
嗨泰勒,感謝你的迴應。 我最終只是將所有hiddenTextView東西移動到頂部視圖控制器,並確保hiddenTextView是最前面的子視圖。然後,UIResponder的東西自行處理,並在成爲第一響應者之後,不需要進一步的觸摸轉發。我希望UIKit API更透明一些:( – kiyoshi 2009-08-12 03:42:06