gpt4 book ai didi

ios - 类型 '[String]' 的不可变值只有可变成员

转载 作者:行者123 更新时间:2023-11-28 07:02:27 25 4
gpt4 key购买 nike

在我的 swift 项目中出现 Immutable value of type '[String]' only has mutating member 的错误并研究了一些答案,但似乎没有一个能解决我的问题。看一看:导入 UIKit

class PassionViewController: UIViewController {

var factIndex = 0
var counter = 1


@IBOutlet var QuoteImage: UIImageView!

@IBOutlet weak var funFactLabel: UILabel!

let factBook = FactBook()
let Liked = Favourite()
override func viewDidLoad() {
super.viewDidLoad()



funFactLabel.text = factBook.factsArray[factIndex]
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}




/*
// MARK: - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
// Get the new view controller using segue.destinationViewController.
// Pass the selected object to the new view controller.
}
*/

@IBAction func showFunFact() {
factIndex++
if (factIndex >= factBook.factsArray.count) {
self.factIndex = 0
}
funFactLabel.text = factBook.factsArray[factIndex]

if counter == 36 {

counter = 1

} else {

self.counter++

}

QuoteImage.image = UIImage(named: "frame\(counter).jpg")

}
@IBAction func goBack() {
factIndex--
var number = factBook.factsArray.count-1
if (factIndex < 0){
self.factIndex = number


}
funFactLabel.text = factBook.factsArray[factIndex]
if counter == 1 {

counter = 36

} else {

self.counter--

}

QuoteImage.image = UIImage(named: "frame\(counter).jpg")

}
@IBAction func Like() {


let currentQuote = factBook.factsArray[factIndex]
Liked.favouriteArray.append(currentQuote)
}
}

let currentQuote = factBook.factsArray[factIndex], factBook.factsArray 是从另一个 View Controller 中检索的,它是一个数组集合。 Liked.favouriteArray.append(currentQuote) 是将此元素存储到来自名为 Favourite 的结构的 favouriteArray 中:

import Foundation



struct Favourite {

var favouriteArray:[String] = []








}

但是,行 Liked.favouriteArray.append(currentQuote) 正在生成错误:“[String]”类型的不可变值仅具有可变成员。如何解决此错误?

最佳答案

不清楚,因为您没有提供 Favourite 类型,但我假设它是一个 struct,或者是一个 class,其中包括factsArray 作为 let 变量。在任何一种情况下,您都在尝试修改 let 变量,这是不允许的(改变不可变值)。 likedfactsArray 必须是 var。 (如果 Favourite 是一个 struct,那么 liked 在任何一种情况下都必须是 var。)

请注意,Swift 函数、方法、属性和变量应以小写字母开头。前导大写字母表示类型。

关于ios - 类型 '[String]' 的不可变值只有可变成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31724682/

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