一个文本视图写道:“你今天已经冥想了0次了。”我已经通过IBOutlet连接了它。
是否可以在代码完成后只增加"0“并更新文本?
发布于 2018-01-17 07:15:30
您应该使用一个变量来存储数字:
var timesMeditated = 0 {
didSet {
yourTextView.text = "You have meditated \(timesMeditated) times today"
}
}注意我是如何编写didSet属性观察者的。这将在变量被更改时调用,因此每当您这样做时:
timesMeditated += 1您的文本视图也将更新。
发布于 2018-01-17 07:35:03
最佳方法,在计数器didSet中更新textView
var mediatationOfDay = 0 {
didSet {
myTextView.text = "You have meditated \(mediatationOfDay) times today."
}
}要回答你最初的问题,这是可能的,但我不建议:
var mediatationOfDay = 0
var textValue = "You have meditated 0 times today."
private func incrementMedidationOfTheDay() {
let oldvalue = mediatationOfDay
mediatationOfDay += 1
textValue = textValue.replacingOccurrences(of: oldvalue.description, with: mediatationOfDay.description)
}也有可能:
private func incrementMedidationOfTheDay() {
mediatationOfDay += 1
myTextView.text = "You have meditated \(mediatationOfDay) times today."
}发布于 2018-01-17 07:14:41
您可以使用新文本重新设置整个文本。
喜欢
yourTextView.text = "You have meditated \(counter) times today."counter是包含计数的变量
https://stackoverflow.com/questions/48295453
复制相似问题