作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的应用中有两个主题列表。用户可以从第二个列表中选择几个主题,将它们添加到第一个列表中。我现在在添加过程中遇到问题。
第二个列表中的单元格是这样描述的:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("AddSubjectCell", forIndexPath: indexPath) as! AddSubjectCell
let subject = Subjects[indexPath.row] as Subject
let Semester = "\(subject.semester)"
cell.nameLabel.text = subject.name
cell.semesterLabel.text = "Semester"
cell.semesterNumberLabel.text = Semester
return cell
}
并从这个数组中获取他们的数据:
var addSubjectsData = [ Subject(name: "A", semester: 1), Subject(name: "B", semester: 2), Subject(name: "C", semester: 3), Subject(name: "D", semester: 5), Subject(name: "E", semester: 6) ]
如果用户勾选了单元格,这部分功能将被激活:
if cell.accessoryType == UITableViewCellAccessoryType.Checkmark {
selectedCellsData.append(Subject(name: selectedCellsData.last!.name, semester: selectedCellsData.last!.semester))
特此,
selectedCellsData.name = cell.nameLabel.text!
selectedCellsData.semester = cell.semesterNumberLabel.text!.toInt()!
我尝试附加的数组定义为 var selectedCellsData = [ Subject(name: "Initial Subject", semester: 0)]
。
在第二个列表的屏幕上有一个完成按钮。如果它被按下,这个 Action 被激活:
@IBAction func saveSubjectDetail(segue:UIStoryboardSegue) {
subjectsData.append(Subject(name: selectedCellsData.last!.name, semester: selectedCellsData.last!.semester))
然后应将所选单元格的数据添加到数组 var subjectsData = [ Subject(name: "Investments", semester: 1), Subject(name: "Statistics", semester: 1), Subject(名称:“Studium Universale”,学期:2) ]
。
尝试运行模拟器时,我收到错误消息“[Subject] 没有名为‘name’的成员”。不过,正如在我的数组中所见,有一个名为“name”的成员。
此外,当我声明类“Subject”时,我还添加了“name”:
class Subject: NSObject {
var name: String
var semester: Int
init(name: String, semester: Int) {
self.name = name
self.semester = semester
super.init()
}
}
我将不胜感激任何有关如何解决此错误的帮助。
最佳答案
selectedCellsData 是 Subject 的数组。因此,如果需要的话,您应该从数组中选择一个项目。所以可能是这样的
selectedCellsData.last.name.text = cell.nameLabel.text
关于arrays - Swift - '[Subject] does not have a member named ' 名称' ',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31942446/
我是一名优秀的程序员,十分优秀!