我想在輸入額外文本時擴展我的單元格。我不想在最後「......」我想單元格自動展開。我採取了以下兩個步驟,但它不起作用。表格單元格中的自動行高度
步驟1
self.tableView.dataSource = self
self.tableView.delegate = self
tableView.estimatedRowHeight = 44
tableView.rowHeight = UITableViewAutomaticDimension
步驟2
messageLabel.numberOfLines = 0
出於某種原因,我的手機是不是擴大我究竟做錯了什麼?
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: 我目前的制約因素,但是我的動態細胞生長不工作。我的手機仍然顯示「...」任何人都可以幫我理解爲什麼?我嘗試重置爲建議的約束,但它不起作用。
哎@nil是ü與使用自動佈局這樣做呢? –
不,我不相信我是 – nil
請通過自動佈局,這將使這項任務更容易。 –