2010-06-03 32 views
2

我有一個包含文檔的UITextView。如果用戶觸摸文檔,插入點(selectedRange屬性)被適當地設置並且UITextView成爲第一響應者(鍵盤出現)。好極了!UITextView:如何以編程方式設置selectedRange併成爲FirstFoundResponder?

如何以編程方式執行相同的操作?假設我有一個名爲「在字符1,000處編輯」的按鈕。我希望將selectedRange設置爲[1000,0],然後使textview成爲第一個響應者。

問題...

  1. textview.selectedRange二傳手似乎只具有viewDidAppear調用時的效果。

  2. [textview becomeFirstResponder]將插入點設置爲文檔末尾。

所以,我能做的最好的是先成爲FirstFoundResponder,然後設置selectedRange。用戶將視圖滾動到文檔的底部,然後返回到所需的插入點。有點醜。

我應該在轉換過程中通過黑客'scrollEnabled'和'可編輯'標誌來掩蓋醜陋?還是有更好的方法來做到這一點?

回答

0

你可能會被卡住做一個黑客。這個怎麼樣:

當您設置選定的範圍(也許通過在UITextView上放置另一個相同大小的視圖)隱藏視圖來隱藏難看的滾動。然後,當選擇範圍設置取消隱藏視圖,一段時間後viewDidAppear。

相關問題