![](/img/trans.png)
[英]“Cannot assign image to *UIImageView*” Error in SWIFT (iOS)
[英]Cannot assign values error in swift
我正在擺弄表格視圖,但遇到錯誤無法將“Answer”類型的值分配給“[Answer]”類型的值
答案是一個具有以下定義的類:
class Answer {
var EnglishAnswer: String = ""
var ChineseAnswer: String = ""
init(newEng: String, newChi: String){
self.EnglishAnswer = newEng
self.ChineseAnswer = newChi
}
}
我在 prepareforsegue 方法中遇到了問題:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
let indexpath: NSIndexPath = self.tableView.indexPathForSelectedRow!
var DestinationViewController = segue.destinationViewController as! AnswerTableViewController
var ArrayofArrayswithAnswerElementsTwo : Answer
var ArrayofArrayswithAnswerElements = levelsArray.map( { $0.AnswersArray })
ArrayofArrayswithAnswerElementsTwo = ArrayofArrayswithAnswerElements[indexpath.row]
DestinationViewController.ArrayofArrayswithAnswerElements = ArrayofArrayswithAnswerElementsTwo
}
錯誤清楚地表明您正試圖將Answer
對象數組分配給一個聲明為僅保存Answer
對象的變量。
此變量用於保存Answer
對象:
var ArrayofArrayswithAnswerElementsTwo : Answer
我懷疑這一行正在重新調整一系列Answer
對象:
ArrayofArrayswithAnswerElementsTwo = ArrayofArrayswithAnswerElements[indexpath.row]
您需要放置一個斷點,檢查您的模型,打印對象並檢查您的prepareForSegue
函數中的正確分配。
解決方案:您的問題可能有兩種解決方案:
首先,像這樣定義ArrayofArrayswithAnswerElementsTwo
var ArrayofArrayswithAnswerElementsTwo : [Answer]
其次,讓ArrayofArrayswithAnswerElements[indexpath.row]
返回Answer
而不是[Answer]
PS:變量的命名約定與行業慣例不同步。 變量名應以小寫開頭,並應盡可能短。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.