今天我們來談一談 UITextView 的一些常用設(shè)置及代理,UITextView 和 UITextField 是兩個(gè)常用的文本輸入控件 (Tip: UITextField 詳見前天的文章)兩個(gè)控件的用法有一些相同的部分。還是那句話 希望對(duì)新手有幫助,老手可以直接略過。
效果圖:

屏幕快照 2016-09-28 下午4.42.37.png
// UITextView 定義
let textView = UITextView()
// 設(shè)置 frame
textView.frame = CGRect(x: 20, y: 100, width: 200, height: 30)
// 設(shè)置邊框顏色
textView.layer.borderColor = UIColor.red.cgColor
// 設(shè)置邊框?qū)挾? textView.layer.borderWidth = 2
// 設(shè)置背景顏色
textView.backgroundColor = UIColor.blue
// 設(shè)置內(nèi)容
textView.text = "我是 textView"
// 字體大小
//textView.font = UIFont.systemFont(ofSize: 13)
// 設(shè)置字體
textView.font = UIFont.init(name: "Georgia-Bold", size: 13)
// 字體顏色
textView.textColor = UIColor.red
// 設(shè)置對(duì)齊方式 默認(rèn)為 左對(duì)齊
textView.textAlignment = NSTextAlignment.center
// 設(shè)置是否能編輯
// textView.isEditable = true
// 設(shè)置內(nèi)容是否可選
// textView.isSelectable = false
// 設(shè)置選中文字加粗 下劃線等操作
textView.allowsEditingTextAttributes = true
// 設(shè)置文字內(nèi)的 電話 網(wǎng)址加鏈接
textView.dataDetectorTypes = UIDataDetectorTypes.all
// 設(shè)置代理
textView.delegate = self
self.view.addSubview(textView)
代理屬性方法
// 文本框?qū)⒁_始編輯
func textViewShouldBeginEditing(_ textView: UITextView) -> Bool {
print("文本框?qū)⒁_始編輯")
return true
}
// 文本框已經(jīng)開始編輯
func textViewDidBeginEditing(_ textView: UITextView) {
print("文本框已經(jīng)開始編輯")
}
// 文本框?qū)⒁Y(jié)束編輯
func textViewShouldEndEditing(_ textView: UITextView) -> Bool {
print("文本框?qū)⒁Y(jié)束編輯")
return true
}
// 文本框已經(jīng)結(jié)束編輯
func textViewDidEndEditing(_ textView: UITextView) {
print("文本框已經(jīng)結(jié)束編輯")
}
// 文本變更時(shí)被調(diào)用 現(xiàn)在是一個(gè)字符發(fā)生變化就會(huì)調(diào)用
func textViewDidChange(_ textView: UITextView) {
print("文本變更時(shí)被調(diào)用")
}
// 光標(biāo)移動(dòng)時(shí) 選擇范圍發(fā)生變化
func textViewDidChangeSelection(_ textView: UITextView) {
print("光標(biāo)移動(dòng)時(shí) 選擇范圍發(fā)生變化")
}