我刚刚得到了一些关于我的iOS项目的问题。我现在正在使用xcode 7.0.1。问题是我不能从每个UITableViewCell
获得UISwitch
的值。有4 UITableViewCell
。所以我已经创建了一个对象来存储所有UISwitch
值。Swift - 如何从动态UITableView获取所有UISwitch值?
我的模型
import Foundation
let instanceQuiz = Quiz()
let instanceSwitchModel = SwitchModel()
class Quiz: NSObject {
var answerList: [Int] = []
}
class SwitchModel : NSObject {
var switch1 : Bool? = false
var switch2 : Bool? = false
var switch3 : Bool? = false
var switch4 : Bool? = false
}
我控制器
import UIKit
import SwiftyJSON
class QuizQuestionViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var question: UILabel!
@IBOutlet weak var tableView: UITableView!
var quizs:[JSON]! = ["a","b","c","d"]
override func viewDidLoad() {
super.viewDidLoad()
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return quizs.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("QuizCell", forIndexPath: indexPath)
let quiz = quizs[indexPath.row]
let switchView: UISwitch = UISwitch(frame: CGRectZero)
cell.accessoryView = switchView
if let nameLabel = cell.viewWithTag(100) as? UILabel {
nameLabel.text = quiz["mcq_answer"].stringValue
}
return cell
}
@IBAction func btnSubmit(sender: AnyObject) {
/* how to capture all UISwitch values and store it into model? */
}
}
请指点。谢谢。
“我已经完成创建一个对象来存储所有UISwitch值”。问题是什么? – anhtu
我想在用户点击提交按钮后从UITableViewCell中检索所有UISwitch值。你知不知道怎么?我不能为UISwitch创建IBOutlet,因为它是重复的内容。我看到的是我需要以编程方式进行。 –
我认为“我已经完成了创建一个对象来存储所有UISwitch值”是一个解决方案。创建一个数组存储它们的值。例如:[0,0,...]。当用户打开/关闭一个 - >更新数组。例如:[1,0,...]。 – anhtu