У меня есть следующий код. Я использую все Xcode предложения возможно плюс различные источники на SO и т.д., но я не могу исправить дополнительные вопросы:Варианты развязки для UITableViewCell
var cell =
tableview!.dequeueReusableCellWithIdentifier(identifier as String) as? UITableViewCell?
if (cell == nil)
{
cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier:identifier as String)
cell.backgroundColor = UIColor.clearColor()
// ERROR HERE
}
cell.textLabel?.text = dataArray.objectAtIndex(indexPath.row).valueForKey("category_name") as! String
// ERROR HERE
var str = String(format: "%@%@%@",kServerURl,"/upload/",dataArray.objectAtIndex(indexPath.row).valueForKey("category_image") as! String)
cell?.imageView?.image = UIImage(data: NSData(contentsOfURL: NSURL(string:str)!)!)
// ERROR HERE
return cell
//ERROR HERE
Ошибка:
VALUE OF OPTIONAL TYPE UITABLEVIEWCELL NOT UNWRAPPED DID YOU MEAN TO USE ! or ?
Не имеет значения, если я использую! или ? Я получаю ту же ошибку, в некоторых случаях ошибка будет устранена, если два! добавлены ярусная ячейка !!.
HI, если добавить ячейку! .backgroundColor = UIColor.clearColor() Я по-прежнему получаю ту же ошибку. Если я добавлю (когда будет предложено Xcode) ячейка !!. BackgroundColor = UIColor.clearColor() он работает, это возможно - ячейка !!. Назад .. – dancingbush
изменил начальное назначение на это и теперь ок сейчас: var cell: UITableViewCell ? = tableView.dequeueReusableCellWithIdentifier (идентификатор как String) как UITableViewCell !; – dancingbush
вы можете удалить как UITableViewCell! часть целиком?Проблема в том, что вы принимаете результат этой функции dequeue, которая уже является UITableViewCell? тип, а затем вы делаете необязательный показ (с помощью UITableViewCell?), который заставляет вас получить двойной необязательный тип. –