0
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
var cell = UITableViewCell()
if isFacility {
cell = tableView.dequeueReusableCell(withIdentifier: "facilityCell")!
let gameNameLbl = cell.viewWithTag(100) as! UILabel
gameNameLbl.text = "Badminton Court"
let gameImgVw = cell.viewWithTag(101) as! UIImageView
let bookNowBtn = cell.viewWithTag(102) as! UIButton
bookNowBtn.backgroundColor = DEFAULTAPPCOLOR
ConstantFile.makeCornerRoundBtnWithOutBorder(btn: bookNowBtn)
bookNowBtn.tag = indexPath.row
bookNowBtn.addTarget(self, action: #selector(bookCort(sender:)), for: .touchUpInside)
bookNowBtn.setTitle("BOOK NOW", for: .normal)
if indexPath.row % 2 == 0 {
gameImgVw.backgroundColor = UIColor.red
}
else{
gameImgVw.backgroundColor = UIColor.darkText
}
}
else{
cell = tableView.dequeueReusableCell(withIdentifier: "bookingCell")!
let gameImgVw = cell.viewWithTag(103) as! UIImageView
let gameNameLbl = cell.viewWithTag(104) as! UILabel
let gameDateLbl = cell.viewWithTag(105) as! UILabel
let gametimeLbl = cell.viewWithTag(106) as! UILabel
ConstantFile.roundImageViewWithOutBorder(image: gameImgVw)
gameNameLbl.text = "Tennis Court"
gameDateLbl.text = "22 Dec 2017"
gametimeLbl.text = "7:00pm - 9:00pm"
}
return cell
}
В приведенном выше коде это дает мне сбой при прокрутке таблицы «Фатальная ошибка: неожиданно нашли ноль в то время как разворачивание необязательное значение» для UIButton (в этой строке пусть bookNowBtn = cell.viewWithTag (102) as! UIButton).UIButton проблема в быстром 3.0
Очевидно, что это разворачивается кнопка, которой еще нет. Я предполагаю, что вы поместили кнопку в ячейку где-то еще в коде или в своем раскадровке, но я не уверен, как вы это сделали, поскольку нет никакой информации об этом. Таким образом, я предлагаю вам использовать 'let btn = cell.viewWithTag (102) как UIButton', чтобы развернуть кнопку и вставить кнопку, если она не существует. – sCha
Лучше создать пользовательский элемент подкласса, чтобы вы могли использовать свойства, а не 'viewWithTag' – Paulw11
@Rahul: Вы используете статические ячейки или пользовательскую ячейку? –