Tôi có một số UITableView
với nhiều ô khác nhau, dựa trên những gì trong mảng nội dung của nguồn dữ liệu mà chúng sẽ hiển thị nội dung tùy chỉnh.Làm cách nào để truyền chính xác tới lớp con trong Swift?
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell : UITableViewCell? = nil
let objectAtIndexPath: AnyObject = contentArray![indexPath.row]
if let questionText = objectAtIndexPath as? String {
cell = tableView.dequeueReusableCellWithIdentifier("questionCell", forIndexPath: indexPath) as QuestionTableViewCell
cell.customLabel.text = "test"
}
return cell!
}
Ở đây tôi nhận được lỗi đó
UITableViewCell does not have the attribute customLabel
mà QuestionTableViewCell
không có. Có vấn đề gì với dàn diễn viên của tôi là QuestionTableViewCell
?
Hoặc 'trở lại qtv' trong if-block và thả các tế bào' 'biến. –
@MartinR Phải nhưng tôi giả định anh ta có thể không được thực hiện cấu hình ô; có thể có các cấu hình phổ biến sau này.Ông đã chỉ rõ ràng chỉ là một phần nhỏ của một bộ lớn hơn nhiều cấu hình tế bào có điều kiện (mà ông nên sử dụng một 'switch', không phải là một loạt các câu lệnh' if', nhưng đó là một câu chuyện khác). – matt