Я делаю экран, связанный с чатом, здесь я поместил вид внутри ячейки табличного вида и метку на виде сбоку.
для вида, и я дал ведущий, трейлинг, верх, низ
для метка, которую я задал ограничениями: ведущий, конечный, верхний, нижний
, но здесь текст ячейки и метки не подходит, иногда для короткого текста ячейка становится большой, а для длинного текста она остается такой же, как и при ее появлении
вот код:
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat
{
if indexPath.section==0 {
if (indexPath.row%2)==0
{
let cell:ReceiverChatTableViewCell = (chatTableView.dequeueReusableCell(withIdentifier: "ReceiverChatTableViewCell") as! ReceiverChatTableViewCell?)!
let font = UIFont(name: "Helvetica", size: 20.0)
var height = heightForView(text: cell.receiverTextLbl.text!, font: font!, width: 100.0)
if height<60
{
height=60
}
return height
}
}
else
{
return 50
}
return UITableView.automaticDimension
}
func heightForView(text:String, font:UIFont, width:CGFloat) -> CGFloat{
let label:UILabel = UILabel(frame: CGRect(x: 0, y: 0, width: width, height: CGFloat.greatestFiniteMagnitude))
label.numberOfLines = 1000
label.lineBreakMode = NSLineBreakMode.byWordWrapping
label.font = font
label.text = text
label.sizeToFit()
return label.frame.height
}
пожалуйста, помогите мне решить код.