所以我有一個UITextView
和一些佔位符文本里面。當用戶點擊視圖內部時,我想執行一些代碼,即清除佔位符文本。我試圖創建一個IBAction
但它不會讓我。我在網上查找,發現this UITextViewDelegate Protocol Reference,但我無法弄清楚如何使用它。我發現與代表合作的很多例子都是Objective-C,我在Swift中工作。當用戶點擊Swift中的UITextView時,如何運行一段代碼?
對不起,我是新來的簡單問題。
謝謝!
所以我有一個UITextView
和一些佔位符文本里面。當用戶點擊視圖內部時,我想執行一些代碼,即清除佔位符文本。我試圖創建一個IBAction
但它不會讓我。我在網上查找,發現this UITextViewDelegate Protocol Reference,但我無法弄清楚如何使用它。我發現與代表合作的很多例子都是Objective-C,我在Swift中工作。當用戶點擊Swift中的UITextView時,如何運行一段代碼?
對不起,我是新來的簡單問題。
謝謝!
給出一個IBOutlet到一個文本視圖someTextView
,所有你需要做的是讓你的類符合UITextViewDelegate
,該文本視圖的委託設置爲自我,實現textViewDidBeginEditing
方法:
class ViewController: UIViewController, UITextViewDelegate {
@IBOutlet weak var someTextView: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
someTextView.delegate = self
}
func textViewDidBeginEditing(textView: UITextView) {
println("Some code")
}
}
視圖控制器應該堅持UITextViewDelegate。然後確保實現textViewDidBeginEditing委託方法。下面的代碼應該在用戶開始編輯textview時清除默認的佔位符文本。
import UIKit
class ViewController: UIViewController, UITextViewDelegate {
@IBOutlet weak var textView: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
self.textView.delegate = self
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func textViewDidBeginEditing(textView: UITextView) {
self.textView.text = ""
}
}