내 iOS 앱은 다음 레이아웃 하나있는 UITableViewCell와의 tableview을 (2 개 라벨 1 개 버튼을 포함하는 1 stackview)이축소 UIStackView 라인 UILabel의 수를 변경 한 후
사용자가이 버튼을 탭하면 보유 중앙 라벨 라인의 수는 2 0에서 이동하고 다음과 같이 표시됩니다
:지금 여기에 두 가지 문제가 있습니다 I 스택의 빈 뷰 추가 구성 문제 1에없는 최적 솔루션을 발견 셀
을 크기 조정 UIStackView
2)를 크기 조정1). (invalidateIntrinsicContentSize가 작동하지 않음). 두 번째 스크린 샷에서 볼 수 있듯이
let emptyView = UIView()
emptyView.frame = CGRect(x: 0, y: 0, width: 0, height: 0)
stackView.addArrangedSubview(emptyView)
셀 크기를 조정하지 않고이이 stackview 또는 셀 자체에 기인 있는지 확실하지 않습니다.
단추 이벤트가 내부에서 처리 될 때 UITableViewCell 하위 클래스 내에 코드를 작성한다는 사실을 지적하고 싶습니다. 더 자신의 프레임 안에 뷰를 배치하는 대신 자신의 프레임을 조정하거나 가장 좋은 방법이 될 수 없습니다 ... 그것은 설계 할 수
// dynamic cell sizing
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
return CGFloat(cellEstimatedHeight)
}
해당 indexPath에 대한 해당 테이블 뷰를 새로 고침 하시겠습니까? –
셀 내부에서 : 'let tableview = self.superview as? UITableview tableview.reloadData()' 하지만 작동하지 않습니다 – Claus
그것은 한 행에 대해서만 같을 것이라고 생각합니다 – Claus