我想提出一个选择题测试,我不知道如何让用户选择,所以我能级测试的答案。
我在那有一个表视图故事板视图控制器(连接到导航控制器),我用一个XIB文件为我的自定义单元格。
这些是我的两个类:
视图控制器类 - 持有表视图 - 是我的数据源 - 将数据加载到厦门国际银行我表视图细胞 - 导航栏上有一个名为“级”按钮
表视图细胞类 - 具有显示一个问题的标签出口 - 具有三个按钮的插座显示答案选项 - 具有抽头时,改变按钮的背景颜色的动作
加载的问题和答案选项数据到厦门国际银行细胞正常工作。
当用户点击“级别”按钮,我希望存储用户在一个数组拍了拍所有按钮的titleLabel文本,但我不知道如何做到这一点。
对于这样的事情的典型模式是定义,将收到来自您UITableViewCells事件,如按钮的抽头的委托协议。委托可以发送沿着细胞和按钮在电池被窃听,所以你的TableView或视图控制器可以更新哪个按钮被掐视图全视图模式。
class AnswerCellView: UITableViewCell {
// ...
weak var delegate: AnswerCellViewDelegate?
// The methods here linked to your outlets should call the answerCellClicked on the delegate
// ...
}
protocol AnswerCellViewDelegate {
func answerCellClicked(answerCell: AnswerCellView, answerButton: UIButton)
}
// ...
class AnswerCellTableView: UITableViewDataSource, AnswerCellViewDelegate {
// ...
func answerCellClicked(answerCell: AnswerCellView, answer: UIButton) {
// do the work to keep track of which buttons have been clicked
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
var answerCell: AnswerCellView
// construct your AnswerCellView, setting the delegate property on your cell to self
// ...
answerCell.delegate = self
// ...
}
// ...
}