Ich versuche, meine Zelle zu erweitern, wenn zusätzlicher Text eingegeben wird. Ich möchte nicht "..." Am Ende möchte ich, dass sich die Zelle automatisch ausdehnt. Ich habe diese zwei Schritte gemacht, aber es funktioniert nicht.Automatische Zeilenhöhe in der Tabellenzelle
Schritt 1
self.tableView.dataSource = self
self.tableView.delegate = self
tableView.estimatedRowHeight = 44
tableView.rowHeight = UITableViewAutomaticDimension
Schritt 2
messageLabel.numberOfLines = 0
Aus irgendeinem Grund meiner Zelle expandiert nicht, was mache ich falsch?
import UIKit
import Foundation
struct postStruct {
let username : String!
let message : String!
let photoURL : String!
}
class GeneralChatroom: UIViewController, UITableViewDataSource, UITableViewDelegate, UITextFieldDelegate {
@IBOutlet weak var messageTextField: UITextField!
@IBOutlet weak var tableView: UITableView!
var generalRoomDataArr = [postStruct]()
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.dataSource = self
self.tableView.delegate = self
tableView.estimatedRowHeight = 44
tableView.rowHeight = UITableViewAutomaticDimension
}
@IBAction func backButtonPressed(_ sender: UIButton) {
self.performSegue(withIdentifier: "BackToRoom", sender: nil)
}
//Message Send button is pressed data uploaded to firebase
@IBAction func sendButtonPressed(_ sender: UIButton) {
let message : String = self.messageTextField.text!
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return generalRoomDataArr.count // your number of cell here
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell")
//Set message label to display message
let messageLabel = cell?.viewWithTag(2) as! UILabel
messageLabel.text = generalRoomDataArr[indexPath.row].message
messageLabel.numberOfLines = 0
// your cell coding
return cell!
}
}//END CLASS
UPDATE: Ich habe die aktuellen Einschränkungen aber mein dynamisches Zellwachstum nicht funktioniert. Meine Zelle zeigt immer noch "..." Kann mir jemand helfen, warum zu verstehen? Ich habe versucht, auf die vorgeschlagenen Einschränkungen zurückzusetzen, aber es funktioniert nicht.
hey @nil tun u dies mit der Verwendung von Auto-Layout? –
nein, ich glaube nicht, dass ich – nil
bitte durch Auto-Layout gehen werde es für diese Aufgabe einfacher machen. –