Ios 在解锁操作中访问单元格导致崩溃
在加载tableview之前,我正在单击按钮,以便发生崩溃。是否有解决方案?您需要检查单元格是否为空Ios 在解锁操作中访问单元格导致崩溃,ios,swift,uitableview,Ios,Swift,Uitableview,在加载tableview之前,我正在单击按钮,以便发生崩溃。是否有解决方案?您需要检查单元格是否为空 @IBAction func selectInviteBtnClicked(_ sender: UIButton) { let cell = matchedUsersTableView.cellForRow(at: IndexPath(row: sender.tag, section: 0)) as! MultiUserTableViewCell if selectedUsers[send
@IBAction func selectInviteBtnClicked(_ sender: UIButton) {
let cell = matchedUsersTableView.cellForRow(at: IndexPath(row: sender.tag, section: 0)) as! MultiUserTableViewCell
if selectedUsers[sender.tag] == nil{
selectedUsers[sender.tag] = true
}else if selectedUsers[sender.tag] == false{
selectedUsers[sender.tag] = true
}else{
selectedUsers[sender.tag] = false
}
var count = 0
for value in selectedUsers.values{
if value{
count += 1
}
}
if count == (currentUserRide as! RiderRide).availableSeats + 1{
UIApplication.shared.keyWindow?.makeToast(message: Strings.passengers_more_than_available, duration: 5.0, position: CGPoint(x: self.view.frame.size.width/2, y: self.view.frame.size.height-300))
}
setSelectButtonBasedOnSelection(isSelected:selectedUsers[sender.tag],button: cell.matchedUserSelectBtn)
}
如果您说在加载表之前单击按钮,则可以假定该按钮不是表的一部分。你在某处更改按钮下标签吗?因为如果不是,那么使用sender.tag是没有意义的。@我使用的sender.tag和按钮是uitableview的一部分
guard let cell = matchedUsersTableView.cellForRow(at: IndexPath(row: sender.tag, section: 0)) as? MultiUserTableViewCell {
return
}
// use the cell