2016-04-26 4 views
0

Wie mache ich es automatisch Größe der Höhe der einzelnen Zelle auf der Länge von TextLabel? Idealerweise möchte ich, dass textLabel ebenfalls umgebrochen wird, so dass das textLabel beliebig viele Zeilen aufnehmen kann. Im Folgenden Codes sind das, was zur Zeit die ich habe:Swift iOS automatisch Höhe für UILabel für UITableViewCell() einstellen

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 
     let notification = self.fetchedTweetsArray[indexPath.row] 

     let cell = UITableViewCell() 
     cell.textLabel?.text = notification 
     return cell 
    } 
+0

verwenden Sie automatisches Layout? – ivarun

+0

ohne Autolayout –

Antwort

0

Zu allererst Ihre cellForRowAtIndex sollte wie folgt

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
{ 
    let cell : CustomCell! = tableView.dequeueReusableCellWithIdentifier("ID_CustomCell", forIndexPath: indexPath) as! CustomCell 

cell.selectionStyle = UITableViewCellSelectionStyle.None 

cell.lblData.text = "CustomCell....." 
return cell 

} 

für UILabel Anzahl der Linien Null sein sollte.

enter image description here

Jetzt als je Höhe von UILabel Sie haben für jede Zelle dynamische Höhe zu berechnen und sie in änderbaren Array zu halten, damit Sie später in heightForRowAtIndex verwenden können.

Stellen Sie sicher, auto Redimensionierung wie diese auf UILabel

enter image description here

einfach einen Beispielcode, können Sie sich herunterladen und beobachten.

Download sample code