2015-03-10 4 views
3

Я пытался использовать estimatedHeightForRowAtIndexPath для высоты динамической ячейки с AutoLayout и работает, как ожидалось в iOS8 но раздавить в iOS7.1, говоря это:IOS 7,1 аварии, если heightForRowAtIndexPath не объявлен

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MyProject.ViewController tableView:heightForRowAtIndexPath:]: unrecognized selector sent to instance 0x79e91350'

enter image description here

Если я определяю heightForRowAtIndexPath, ошибка исчезнет, ​​но ячейка не будет автоматически определять размер. Есть идеи?

Обновление: Это действительно доступно в iOS 7.0, правильно?

enter image description here

ответ

6

попробовать:

if (NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_7_1){ 
    self.tableView.rowHeight = UITableViewAutomaticDimension; 
    self.tableView.estimatedRowHeight = 206; 
} 




func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat { 



     if NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_7_1 {    
return UITableViewAutomaticDimension 
      } else {return 206} 
    } 
+0

не передавая явное значение в heightForRowAtIndexPath: против основной идеи реализации концепции динамической высоты ячейки? У меня есть аналогичная проблема, которую я не могу понять - см. Http://stackoverflow.com/questions/29425782/ios7-0-and-ios-7-1-doesnt-honor-dynamic-tableview-height?noredirect=1 # comment47022763_29425782 –

 Смежные вопросы

  • Нет связанных вопросов^_^