当用户点击 Swift 中的 UITextView 时,您如何 运行 一段代码?
How do you run a section of code when the user taps the UITextView in Swift?
所以我在里面有一个 UITextView
和一些占位符文本。当用户点击视图内部时,我想执行一些代码,即清除占位符文本。我试图创建一个 IBAction
但它不允许我这样做。我在网上查了一下,发现 this UITextViewDelegate Protocol Reference 但我不知道如何使用它。我发现很多与代表一起工作的例子是 Objective-C,我在 Swift.
工作
很抱歉这个简单的问题我是新手。
谢谢!
View Controller 应该遵循 UITextViewDelegate。然后确保实现 textViewDidBeginEditing 委托方法。当用户开始编辑文本视图时,下面的代码应该清除默认的占位符文本。
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 = ""
}
}
给定文本视图 someTextView
的 IBOutlet,您需要做的就是使您的 class 符合 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")
}
}
所以我在里面有一个 UITextView
和一些占位符文本。当用户点击视图内部时,我想执行一些代码,即清除占位符文本。我试图创建一个 IBAction
但它不允许我这样做。我在网上查了一下,发现 this UITextViewDelegate Protocol Reference 但我不知道如何使用它。我发现很多与代表一起工作的例子是 Objective-C,我在 Swift.
很抱歉这个简单的问题我是新手。
谢谢!
View Controller 应该遵循 UITextViewDelegate。然后确保实现 textViewDidBeginEditing 委托方法。当用户开始编辑文本视图时,下面的代码应该清除默认的占位符文本。
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 = ""
}
}
给定文本视图 someTextView
的 IBOutlet,您需要做的就是使您的 class 符合 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")
}
}