利用 UITextContentType 顯示使用者的電話和 email
有些 iOS App 彷彿有讀心術,在我們輸入文字時就能猜出我們想輸入的內容,比方以下畫面輸入電話和 email 時,App 自動猜出我們的電話和 email。
讀心術解密
其實 iOS 不會讀心術,它只是從通訊錄的個人資料讀取使用者的相關資訊。
像電話,email 這類常輸入的文字,每次都要一個一個字打實在太煩了。因此從 iOS 10 開始,iOS SDK 多了 UITextContentType,只要設定 text field 或 text view 的 text content type,即可讓使用者輸入電話,email 等常用欄位時,自動顯示相關的內容。
設定 text content type 的方法
方法1: 從 Interface Builder 設定
點選 text field 或 text view,在 Attributes inspector 頁面選擇 Content Type。
比方選擇 Email Address 將讓文字輸入時顯示使用者的 email。
方法2: 從程式設定
@IBOutlet weak var textField: UITextField!override func viewDidLoad() { super.viewDidLoad() textField.textContentType = .emailAddress}
設定 text field or text view 的 property textContentType。textContentType 的型別是 UITextContentType,UITextContentType 裡定義了許多型別 property,分別對應我們時常輸入的文字內容,比方 emailAddress & telephoneNumber。