gpt4 book ai didi

ios - 无法使用我的按钮的用户默认值保存不同的 setTitle

转载 作者:行者123 更新时间:2023-11-29 05:19:47 27 4
gpt4 key购买 nike

我正在开发一个构建您自己的冒险应用程序,其中有 2 个按钮,每次按下它们时都会更改其 .setTitle 。我的应用程序已准备就绪 - 一切正常。每当按下按钮时,故事 textview 都会发生变化,并且我的按钮会显示新的标题。我唯一剩下的就是找到一种方法来保存按钮显示的最新标题当用户关闭应用程序后返回应用程序时。

使用UserDefaults.Standard帮助我保存了故事textview,但到目前为止我找不到保存更改标题的方法(.setTitle ) 我的按钮。这就是我保存 textview 的方法:

let defaults = UserDefaults.standard
func savePageTopText() {
defaults.set(storyTextView.text, forKey: "topText")

}

func checkTopPageText() {
let pageText = defaults.value(forKey: "topText") as? String
storyTextView.text = pageText
}

然后,我将 savePageTopText() 添加到每个按钮,并将 checkTopPageText() 添加到 viewDidLoad.This ,这就是标题的方式因为我的按钮是经过编码的,只要按下按钮,它们就会改变:

let answer1a = "Turn left"
let answer1b = "Turn right"
let answer2a = "Keep driving!"
let answer2b = "Pull over!"

@IBAction func buttonPressed(_ sender: UIButton) {
if sender.tag == 1 && storyIndex == 1 {
storyTextView.text = story3
topButton.setTitle(answer3a, for: .normal)
bottomButton.setTitle(answer3b, for: .normal)
savePageTopText()
}
}

我希望我对一切都足够清楚——尽我所能。当用户关闭应用程序时,我如何确保他们返回到按钮显示的相同且最新的标题?如何使用用户默认值保存按钮 setTitle?

最佳答案

您正确地执行了所有操作,例如保存,但是在获取时您却犯了错误。 UserDefaults 具有获取数据的类型,例如 StringIntArray 等。

以下是获取保存的字符串的方法。

func checkTopPageText() {
storyTextView.text = defaults.string(forKey: "topText")
}

就像您需要知道正在保存哪些数据,然后只有您可以使用适当的方法获取数据一样。

关于ios - 无法使用我的按钮的用户默认值保存不同的 setTitle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58795351/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com