У меня есть таблица, в которой отображается созданная пользователем ячейка. Проблема в том, что ярлык в моей ячейке обрезается при каждой прокрутке. Даже если я придаю метке большую ширину, она все равно усекается.
Это мой cellForRowAt:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
guard let cell = tableView.dequeueReusableCell(withIdentifier: cellID, for: indexPath) as? CoronaStatisticsCell else { return UITableViewCell() }
let currentCountry = searchedCountry == nil ? countrySections[indexPath.section][indexPath.row] : searchedCountry![indexPath.row]
cell.configure(country: currentCountry)
cell.preservesSuperviewLayoutMargins = false
cell.separatorInset = UIEdgeInsets.zero
cell.layoutMargins = UIEdgeInsets.zero
return cell
}
Это мой ярлык, который усекается в моей ячейке:
private lazy var casesStaticticLbl: UILabel = {
var lbl = UILabel()
lbl.font = UIFont(name: "AvenirNext-Bold", size: 20)
lbl.textAlignment = .left
return lbl
}()
В методе setSelected я установил свои представления:
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
layer.cornerRadius = 10
countryLabel.translatesAutoresizingMaskIntoConstraints = false
addSubview(countryLabel)
NSLayoutConstraint.activate([
countryLabel.leadingAnchor.constraint(equalTo: leadingAnchor, constant: 10),
countryLabel.trailingAnchor.constraint(equalTo: trailingAnchor, constant: -10),
countryLabel.topAnchor.constraint(equalTo: topAnchor, constant: 10),
countryLabel.heightAnchor.constraint(equalToConstant: 20)
])
var casesSV = UIStackView(arrangedSubviews: [casesLbl, casesStaticticLbl])
var deathsSV = UIStackView(arrangedSubviews: [deathLbl, deathStaticticLbl])
var recoveredSV = UIStackView(arrangedSubviews: [recoveredLbl, recoveredStaticticLbl])
for sv in [casesSV, deathsSV, recoveredSV] {
sv.axis = .vertical
sv.translatesAutoresizingMaskIntoConstraints = false
sv.spacing = 10
sv.alignment = .leading
addSubview(sv)
}
NSLayoutConstraint.activate([
casesSV.leadingAnchor.constraint(equalTo: countryLabel.leadingAnchor),
casesSV.topAnchor.constraint(equalTo: countryLabel.bottomAnchor, constant: 5),
casesSV.bottomAnchor.constraint(equalTo: bottomAnchor, constant: -20),
deathsSV.centerXAnchor.constraint(equalTo: centerXAnchor),
deathsSV.topAnchor.constraint(equalTo: countryLabel.bottomAnchor, constant: 5),
deathsSV.bottomAnchor.constraint(equalTo: bottomAnchor, constant: -20),
recoveredSV.trailingAnchor.constraint(equalTo: trailingAnchor, constant: -30),
recoveredSV.topAnchor.constraint(equalTo: countryLabel.bottomAnchor, constant: 5),
recoveredSV.bottomAnchor.constraint(equalTo: bottomAnchor, constant: -20),
])
}
Это начальная метка
после прокрутки:
Я думаю, что есть проблема с моими представлениями стека, потому что, если я только добавляю метку в ячейку, ничто не усекается.
Спасибо в авансовый