사용자가 사용할 수있는 모든 다른 HomeKit 장치를 나열하는 UITableView
이 있습니다.(Swift) 동적 인 TableViewCells에서 UITableView의 높이를 변경하려면 어떻게 설정해야합니까?
분명히 얼마나 많은 장치가 있는지 알 수있는 방법이 없으므로 스토리 보드 변경시 높이가 UITableView's
일 필요가 있습니다.
나는 내가 viewDidLoad()
함수를 호출하는이, 시도했다 : 나는있는 tableview에서 일부 UI 요소를하려고
func adjustHeightOfTableView() {
//getting the height of the tableview
var tableHeight = self.tableView.contentSize.height
//the height of the content inside the view
var maxHeight = self.tableView.superview?.frame.size.height
//if the height of the content is bigger then the height of the tableview
if (maxHeight! > tableHeight) {
tableHeight = maxHeight!
//set the tableview height to be the content height
}
//trying to reload the tableview height?
self.view.layoutIfNeeded()
self.tableView.reloadData()
}
을, 그리고 나는 그들이 바닥에서 집합 공간이되고 싶어 tableview뿐만 아니라 테이블 뷰를 가지고 있어야 할 셀의 높이가되어야합니다.
하지만 작동하지 않습니다. 내가 잘못했거나 누군가이 작업을하는 방법을 알고 있다면 알려주십시오. 감사합니다. 당신이보기 didload에 autolayouts
를 사용하는 경우
화면에 셀 수가 적고 빈 셀을 표시하는 경우 tableView의 높이를 줄이시겠습니까? –
'tableHeight = maxHeight!'는 tableView 높이를 설정하지 않고 변수의 값만을 설정합니다. tableView 자체의 프레임을 수정해야합니다. 예 :'self.tableView.frame = CGRectMake (...)' –
왜 높이를 변경하고 싶습니까? 점은 무엇인가? 테이블의 맨 아래에있는 공백을 없애기 위해서? 대신 왜 그 색을 투명하게 만들까요? 아니면 다른 UI 요소를 그 공간을 차지하도록 옮기고 싶습니까? –