[英]Change button title when clicking it
class ViewController: UIViewController {
@IBOutlet weak var words: UILabel!
var positiveWords = ["dont give up","keep going","you can do that","your are strong"]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func wordsButton(_ sender: Any) {
for w in positiveWords {
// show array in label
words.text = "\(w)"
}
}
}
当我单击按钮时,它只显示一个单词,但我想在单击时显示另一个单词,我该怎么做?
显示给用户的单词是字符串的 positiveWords 数组的最后一个,因为您使用控制流For-In 循环,它枚举数组并将当前元素设置为标签。
解决方案:
标准库数组函数joined(separator:)
@IBAction
func wordsButton(_ sender: Any) {
words.text = positiveWords.joined(separator: ", ")
}
For-In 循环
func wordsButton(_ sender: Any) {
var labelWord: String = ""
for word in positiveWords {
labelWord = labelWord + ", " + word
}
words.text = labelWord
}
你的问题有点含糊。 但这里有不同的方法来解决您的问题
//Wil generate different word every time you press the button
func wordsButton(_ sender: Any) {
words.text = positiveWords.randomElement(
}
如果你想一次添加整个数组
func wordsButton(_ sender: Any) {
for w in positiveWords {
words.text! += "\(w) "
}
}
如果你想一次添加一个
var displayedWords = o
func wordsButton(_ sender: Any) {
var totalWords = positiveWords.count
if displayedWords < totalWords {
label.text! += "\(positiveWords[displayedWords]) "
displayedWords += 1
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.