如何在Swift中不断更新ULabel的文本
How to constantly update the text of ULabel in Swift
概览
我正在构建一个简单的项目,其中有一个 textView 和一个标签。我希望每次用户从 textView 复制一个单词并显示它时,标签内容都会发生变化。
目前我无法自动执行此操作。
我在做什么
class ViewController: UIViewController {
@IBOutlet weak var textView: UITextView!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var refresh: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
label.text = UIPasteboard.general.string
refresh.addTarget(self, action: #selector(displayNew), for: .touchUpInside)
}
@objc func displayNew(){
label.text = UIPasteboard.general.string
}
}
因此,只要用户按下刷新按钮,标签的文本就会刷新。现在我需要它自动发生。
问题
ypu 如何在用户复制内容时自动刷新标签的文本?
添加监听器
NotificationCenter.default.addObserver(self, selector: #selector(clipChange),
name: UIPasteboard.changedNotification, object: nil)
@objc func clipChange(){
label.text = UIPasteboard.general.string
}
概览 我正在构建一个简单的项目,其中有一个 textView 和一个标签。我希望每次用户从 textView 复制一个单词并显示它时,标签内容都会发生变化。 目前我无法自动执行此操作。
我在做什么
class ViewController: UIViewController {
@IBOutlet weak var textView: UITextView!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var refresh: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
label.text = UIPasteboard.general.string
refresh.addTarget(self, action: #selector(displayNew), for: .touchUpInside)
}
@objc func displayNew(){
label.text = UIPasteboard.general.string
}
}
因此,只要用户按下刷新按钮,标签的文本就会刷新。现在我需要它自动发生。
问题
ypu 如何在用户复制内容时自动刷新标签的文本?
添加监听器
NotificationCenter.default.addObserver(self, selector: #selector(clipChange),
name: UIPasteboard.changedNotification, object: nil)
@objc func clipChange(){
label.text = UIPasteboard.general.string
}