2016-11-01 2 views
0

Я пытаюсь изменить высоту ячейки таблицыView динамически в соответствии с размером содержимого, но получаю ошибку.Невозможно обрабатывать размер ячейки динамически, Accroding до размера содержимого

error-

enter image description here

Фактический код-

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat 
    { 
     let height:CGFloat = self.calculateHeightForString(downloadTableDataa[indexPath.row] as! String) 
     return height + 70.0 
    } 

    func calculateHeightForString(inString:String) -> CGFloat 
    { 
     let messageString = inString 
     let attributes = UIFont.init(name: "Roboto-Regular", size: 15) 

     let attrString:NSAttributedString? = NSAttributedString(string: messageString, attributes: attributes) 
     let rect:CGRect = attrString!.boundingRectWithSize(CGSizeMake(300.0,CGFloat.max), options: NSStringDrawingOptions.UsesLineFragmentOrigin, context:nil)//hear u will get nearer height not the exact value 
     let requredSize:CGRect = rect 
     return requredSize.height //to include button's in your tableview 

    } 

ответ

0

Проблема заключается в том, что вы пытаетесь передать объект типа UIFont в поле атрибутов и поле атрибутов ожидает словарь типа [String: AnyObject]. Это то, о чем вам говорит ошибка.

Перед

let attributes = UIFont.init(name:"Roboto-Regular", size:15.0) <---- UIFont 
let attrString:NSAttributedString? = NSAttributedString(string: messageString, attributes: attributes) <---- wants a dictionary of type [String:AnyObject] 

После

let stringAttributes = [NSFontAttributeName: UIFont(name: "Roboto-Regular", size: 18.0)!] 
let attrString = NSAttributedString(string: messageString, attributes: stringAttributes) 
+0

Thnx за ценный ответ, но теперь получить другой error- – iDeveloper

+0

'Не удалось ввергнуть значение типа '__NSDictionaryI' (0x10a7dff98) к«NSString '(0x109abab48) .' – iDeveloper

+0

** В строке - ** 'let height: CGFloat = self.calculateHeightForString (downloadTableDataa [indexPath.row] as! String)' – iDeveloper

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