我用过UITableViewSection
。所以我已经列出了我需要的数据。
但是在选择UITableViewCell
时出现了问题。
这是我选择单元格时的代码。
这是屏幕截图
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print("Section \(indexPath.section), Row : \(indexPath.row)")
let model = questionViewModel.titleForHeaderInSection(atsection:indexPath.section)
print(model.question)
// reviewViewModel.question = model.id
print(model.id)
let value: Int = model.id
let string = String(describing: value)
//let x: Int? = Int(model.id)
questionViewModel.question_id = string
questionViewModel.question = model.question
let optiondatasourcemodel:NH_OptionDataSourceModel = NH_OptionDataSourceModel(array: questionViewModel.tableArray[indexPath.section] as? [String] )
print(optiondatasourcemodel.dataListArray?.count)
let optionviewmodel:NH_OptionViewModel = NH_OptionViewModel(withdatasource: optiondatasourcemodel)
let optionmodel = optionviewmodel.datafordisplay(atindex:indexPath)
let modele = questionViewModel.titleForHeaderInSection(atsection: indexPath.section)
print(modele.buttontype)
optionviewmodel.button = modele.buttontype
let cell = tableview.cellForRow(at: indexPath) as? NH_QuestionListCell
print(questionViewModel.questionlist)
print(questionViewModel.questions)
print(questionViewModel.answers)
questionViewModel.question(answer:questionViewModel.question_id!)
questionViewModel.answer(answer: optionmodel.values!)
questionViewModel.questionlist(answer: questionViewModel.question!)
if optionviewmodel.button == "1" {
cell?.imagebutton.setImage(UIImage(named: "checkbox_check.png"), for: .normal)
self.selected = 1
questionViewModel.imagename = "1"
}
else if optionviewmodel.button == "2" {
self.selected = 1
cell?.imagebutton.setImage(UIImage(named: "radio_check.png"), for: .normal)
questionViewModel.imagename = "2"
}
}
根据屏幕截图,有两个问题,有两个选项。从那我只需要选择一个选项。 例如:您是否还好:-问题 答案:是的
仅选择一个单元格。 一旦我选择“是”并且我选择了“否”选项,那么数据应该从阵列中删除。
func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {
let optiondatasourcemodel:NH_OptionDataSourceModel = NH_OptionDataSourceModel(array: questionViewModel.tableArray[indexPath.section] as? [String] )
print(optiondatasourcemodel.dataListArray?.count)
let optionviewmodel:NH_OptionViewModel = NH_OptionViewModel(withdatasource: optiondatasourcemodel)
let optionmodel = optionviewmodel.datafordisplay(atindex:indexPath)
let modele = questionViewModel.titleForHeaderInSection(atsection: indexPath.section)
print(modele.buttontype)
optionviewmodel.button = modele.buttontype
let cell = tableview.cellForRow(at: indexPath) as? NH_QuestionListCell
print(optionmodel.values)
questionViewModel.removequestion(question:questionViewModel.question!)
questionViewModel.removeanswer(answer:optionmodel.values!)
questionViewModel.removequestionid(removequestionid:questionViewModel.question_id!)
let model = questionViewModel.titleForHeaderInSection(atsection:indexPath.section)
print(model.question)
// reviewViewModel.question = model.id
print(model.id)
let value: Int = model.id
let string = String(describing: value)
//let x: Int? = Int(model.id)
questionViewModel.question_id = string
questionViewModel.question = model.question
questionViewModel.answer = optionmodel.values
if optionviewmodel.button == "1" {
cell?.imagebutton.setImage(UIImage(named: "checkbox_uncheck.png"), for: .normal)
self.selected = 1
questionViewModel.imagename = "1"
}
else if optionviewmodel.button == "2" {
self.selected = 1
cell?.imagebutton.setImage(UIImage(named: "radio_uncheck.png"), for: .normal)
questionViewModel.imagename = "2"
}
}
这是代码。 但是据此有些问题。 问题:-
当我选择第二部分时表示..... 问题:-你开心吗 为此,我选择选项为yes。当时,我已经针对第一个问题选择了一个选项yes。复选框图像将显示为click。 但是当我选择下一个问题时,第一个问题单元格的复选框图像消失了。如何解决该问题。
在选择第二个问题选项数据时未将其追加到数组中。
当我取消选择相同的单元格时会追加
那么如何解决该问题?