Я делаю пользовательский UITableViewCell, в котором я должен ввести три текстовых поля, теперь проблема заключается в том, что поле с именем Descirizione действительно очень широкое, и я должен найти способ показать все три поля! это также создает проблему при отображении поля Prezzo , которое перемещается, когда поле Descrizione очень большое.
Изображение отображаемого текста ниже
CustomTableViewCellArticolo.swift
import UIKit
import Foundation
class CustomTableViewCellArticolo: UITableViewCell {
let labCodArt = UILabel()
let labDescrizione = UILabel()
let labPrezzo = UILabel()
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
labCodArt.translatesAutoresizingMaskIntoConstraints = false
labDescrizione.translatesAutoresizingMaskIntoConstraints = false
labPrezzo.translatesAutoresizingMaskIntoConstraints = false
contentView.addSubview(labCodArt)
contentView.addSubview(labDescrizione)
contentView.addSubview(labPrezzo)
let viewsDict = [
"CodArt": labCodArt,
"Descrizione": labDescrizione,
"Prezzo": labPrezzo,
] as [String: Any]
contentView.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:[Prezzo]-15-[Descrizione]", options: [], metrics: nil, views: viewsDict))
contentView.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|-[CodArt]-5-[Descrizione]-|", options: [], metrics: nil, views: viewsDict))
contentView.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|-[CodArt]-|", options: [], metrics: nil, views: viewsDict))
contentView.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|-[Descrizione]-[Prezzo]-|", options: [], metrics: nil, views: viewsDict))
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
UIViewController.swift
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
TableViewArticoli.beginUpdates()
let cell = TableViewArticoli.dequeueReusableCell(withIdentifier: "MyCell", for: indexPath) as! CustomTableViewCellArticolo
cell.labCodArt.text = filteredData[indexPath.row].CodArt
cell.labDescrizione.text = filteredData[indexPath.row].Descrizione
cell.labPrezzo.text = " € \(filteredData[indexPath.row].Prezzo!)"
TableViewArticoli.endUpdates()
return cell
}