Я борюсь с проблемой в моем проекте xcode. Я отображаю пользовательские ячейки в табличном представлении и использую didSelectRowAt indexPath:
для отображения подробного представления. Работает так, как я хочу, но странно только на втором клике.
Я довольно новичок в программировании и буду признателен за вашу помощь в этом. Большое вам спасибо!
Я проверил, что не использую didDeselectRow at
случайно. Я также прошел через stackoverflow, чтобы попытаться найти решение, и это было самое близкое к моей проблеме. Но я использую didSelectRow at
.
// Вот мой код, когда пользователь касается ячейки:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
// Pop Up Variables
var id:String = tasks[indexPath.row].task_id!
var title:String = tasks[indexPath.row].task_title!
var type:String = tasks[indexPath.row].task!
var desc:String = tasks[indexPath.row].task_desc!
var action:String = "Dismiss"
present(detailVC!, animated: true, completion: {
self.detailVC!.setPopup(withTaskId: id, withTitle: title, withType: type, withDesc: desc, withAction: action)
})
}
// Просто обратите внимание, я настраиваю переключатель на другой контроллер представления в верхней части документа.
// Показать всплывающее окно
var detailVC: TaskDetailViewController?
override func viewDidLoad() {
super.viewDidLoad()
// Set up the task detail view controller
detailVC = storyboard?.instantiateViewController(withIdentifier: "TaskDetailVC") as! TaskDetailViewController?
detailVC?.delegate = self
detailVC?.modalPresentationStyle = .overCurrentContext
// Conform to the table view protocols
tableView.dataSource = self
tableView.delegate = self
// Set Self as delegate for model and call getTasks
// Get the Tasks from the Task Model
model.delegate = self
model.getTasks()
}
Подробный вид отображается только после второго касания строки. Не в первый раз?