Arrays 如果选中标记处于启用状态-将对象添加到数组[SWIFT]
这是我的代码,但它不会将用户名保存到数组中Arrays 如果选中标记处于启用状态-将对象添加到数组[SWIFT],arrays,swift,swift3,checkmark,Arrays,Swift,Swift3,Checkmark,这是我的代码,但它不会将用户名保存到数组中 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { // тут проверяем если ячейка уже выбрана то удаляем из массива и убираем чекмарк // если не выбрана то добавляем в массив и ставим чекмарк
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
// тут проверяем если ячейка уже выбрана то удаляем из массива и убираем чекмарк
// если не выбрана то добавляем в массив и ставим чекмарк
if tableView.cellForRow(at: indexPath)?.accessoryType == .checkmark {
let cell = UITableViewCell()
usersInGame.add(cell.textLabel?.text)
} else {
tableView.cellForRow(at: indexPath)?.accessoryType = .checkmark
}
tableView.deselectRow(at: indexPath, animated: false) //убираем выделение ячейки если не нужно обратное
let usersInGame: NSMutableArray = []
}
我知道它不起作用,因为当我打开复选标记代码时,它就不起作用了。请帮忙 看起来您正在创建一个新单元格,并尝试检索文本。此外,正如@Samarth Kejriwal所指出的,本地usersInGame是不需要的
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if let cell = tableView.cellForRow(at: indexPath), cell.accessoryType == .checkmark {
usersInGame.add(cell.textLabel?.text)
} else {
tableView.cellForRow(at: indexPath)?.accessoryType = .checkmark
}
tableView.deselectRow(at: indexPath, animated: false)
}
试试这个。另外,设置断点以确保它进入usersInGame。可能有一些语法错误,我正在使用没有XCode的笔记本电脑。删除最后一个linelet usersInGame:NSMutableArray=[],因为它将再次创建空阵列是否正确?