UITextView 是 Swift 原生控件用戶最常用的輸入元件,諸如 Email 、筆記本或是聊天軟體,輸入框鮮少有開發者自己刻。 內建的功能完整,其功能幾乎涵蓋大部分情境,不足的地方只要在原生條件下去擴充即可。 因此,UITextView 底層有非常多未公開的流程,再擴充時如果能了解一二可以解少很多開發時間。
<aside> 📌 此篇專注於 UITextView 原生觸控事件,建議先參考 前一篇 觸控事件初探
</aside>
— UITextView init and draw
(上圖 ) 預設下的UITextView 初始化後就已經自帶 22 個 UIGestureRecongnizers
— UIView init and draw (對照)
(上圖 ) UIView 初始化沒有任何 UIGestureRecognizers
如同前言,UITextView 本身提供諸多強大的功能,其中一項自動辨識文字轉成可點擊 Link。 我試著在 text 中加入兩個網址,會 print 出些什麼。
(上圖 ) 設定好 text 後, UIGestureRecongnizers 從 22 個變成 23 個
試著印出 GestureRecognizers 有哪些
— 前22個