首先,我必须使UILabel可单击,当单击它时,应将其文本复制到剪贴板。我正在将Xcode 10与Swift 5.1配合使用。
因此,首先我希望标签是可单击的,然后,此单击操作会将其文本复制到剪贴板。这是一个基本级别的程序。
答案 0 :(得分:1)
使标签“可点击”:
IllegalArgumentException
然后,从标签中检索文本并将其复制到剪贴板:
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(labelDidGetTapped:))
yourLabel.userInteractionEnabled = true
yourLabel.addGestureRecognizer(tapGesture)
请注意,点击文本时不会有任何效果,最好通过例如对标签的Alpha进行动画处理来向用户呈现某种反馈
答案 1 :(得分:0)
尝试启用用户交互。例如:
yourLabel.isUserInteractionEnabled = true
检查此先前的线程。这个问题已经回答。 How to make a UILabel clickable?
答案 2 :(得分:0)
用于将文本复制到clipBoard。
UIPasteboard.general.string = yourLabel.text
答案 3 :(得分:0)
答案的第一部分可以是-
@IBOutlet weak var clickAble: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
// this code is for making label clickable.
clickAble.isUserInteractionEnabled = true
let tap = UITapGestureRecognizer.init(target: self, action: #selector(tapFunction))
tap.numberOfTapsRequired = 1
clickAble.addGestureRecognizer(tap)
}
答案的第二部分为-
@objc func tapFunction(sender:UITapGestureRecognizer)
{
// this is for copying label text to clipboard.
let labeltext = clickAble.text
UIPasteboard.general.string = labeltext
}
}