Ios 无法对不可变值使用变异成员:';n';是一个';让';常数
我正在使用rss从网站获取数据。我想将这些数据设置为struct中的变量,但for循环中出现了一个错误Ios 无法对不可变值使用变异成员:';n';是一个';让';常数,ios,arrays,swift,struct,swift4,Ios,Arrays,Swift,Struct,Swift4,我正在使用rss从网站获取数据。我想将这些数据设置为struct中的变量,但for循环中出现了一个错误 struct News { var title: String var link: String } class HaberTableViewController: UITableViewController, XMLParserDelegate { var NewsArray:[News] = [] override func viewDidLoad() {
struct News {
var title: String
var link: String
}
class HaberTableViewController: UITableViewController, XMLParserDelegate {
var NewsArray:[News] = []
override func viewDidLoad() {
let url = "http://www.ensonhaber.com/rss/ensonhaber.xml"
Alamofire.request(url).responseRSS() { (response) -> Void in
if let feed: RSSFeed = response.result.value {
for item in feed.items {
print(item.title!)
for n in self.NewsArray
{
n.title.append(item.title)
n.link.append(item.link)
}
}
}
}
}
.
.
.
}
我认为您正在尝试使用
feed.items
中的值,用新的News
实例填充NewArray
数组。如果是这种情况,那么您的代码应该是:
if let feed: RSSFeed = response.result.value {
for item in feed.items {
if let title = item.title, let link = item.link {
let news = News(title: title, link: link)
NewsArray.append(news)
}
}
}
请注意,这也涉及可选的item.title
(可能还有item.link
)
请注意,变量名称应以小写字母开头,因此NewsArray
应为NewsArray