swift - 如何在编辑时清除 UITextView?

标签 swift uitextview

我目前有以下代码:

class NewPostController: UIViewController {

@IBOutlet weak var MessageField: UITextView!

override func viewDidLoad() {
    super.viewDidLoad()
    MessageField.text = "What's on your mind?"
    MessageField.textColor = UIColor.lightGrayColor()
}

func textViewDidBeginEditing(MessageField: UITextView) {
    if MessageField.textColor == UIColor.lightGrayColor() {
        MessageField.text = ""
        MessageField.textColor = UIColor.blackColor()
    }
}

但是,每当我编辑 MessageField 时,textViewDidBeginEditing 中的代码都不会运行。我怀疑这是因为在函数中引用 MessageField 的方式无效,但我不知道该怎么做。

最佳答案

看起来您没有设置UITextViewdelegate

class ViewController: UIViewController, UITextViewDelegate {

@IBOutlet weak var myTextView: UITextView!

override func viewDidLoad() {
    super.viewDidLoad()
    myTextView.delegate = self
}

func textViewDidBeginEditing(textView: UITextView) {
    myTextView.text = String()
}

UITextViewDelegate Protocol Reference

关于swift - 如何在编辑时清除 UITextView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30609358/

相关文章:

swift - 通过按下按钮更改 UITextView 的内容。

arrays - Swift 中的数组语法

ios - 我如何编写一个函数来接受任何符合 Codable 的对象

ios - swift 每种屏幕尺寸的不同 StoryBoard

iphone - 动画 UITextView 时打字

ios - 使用排除路径计算 TextView 的单元格高度

ios - 类似终端的应用程序 : UItextFied vs UITextView

swift - 如何在 UITabBarController 的 TabBar 项之间插入分隔符

iOS - 在横向模式下获取状态栏高度和宽度 0

ios - UITextView 不更新它的 contentSize