如果选中标记 - 将对象添加到数组 [SWIFT]
If checkmark is on - add object to the array [SWIFT]
这是我的代码,但它没有将用户名保存到数组中
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.
的笔记本电脑上工作
这是我的代码,但它没有将用户名保存到数组中
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.