2017-03-17 3 views
0

동적 인 숫자의 셀을 사용하고 그 기준으로 표의 크기를 조정할 것입니다. 테이블 크기를 조정할 수없는 방법으로이 작업을 수행하는 방법을 알아낼 수 있습니다. 100 셀을 사용하든 10 셀을 사용하든 동일한 높이로 뷰가 설정됩니다.커스텀 UITableView의 높이를 어떻게 설정합니까?

class generalTableViewController: UITableViewController { 


    override func viewWillAppear(_ animated: Bool) { 
     tableView.rowHeight = UITableViewAutomaticDimension 
     // self.tableView.contentSize.height = 2000 
     // self.tableView.frame.size.height = 2000 
    } 
    override func viewDidLoad() { 
     super.viewDidLoad() 
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
    } 

    override func numberOfSections(in tableView: UITableView) -> Int { 
     return 1 
    } 

    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
     return 1000 
    } 

    override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
     let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) 

     return cell 
    } 
} 
+2

사용 - : tableView의 heightForRowAtIndexPath 메소드 –

+0

'UITableViewCell' 높이를 설정하려고합니까? 또는'UITableView' 높이? –

+0

UITableViewCell을 조정할 수 있습니다. 문제가있는 UITableView입니다. – user6688986

답변

0

일반적으로 UITableViewController가 전체보기를 대신합니다. UITableView를 사용하여 뷰의 일부만 차지하려면 UIViewController를 사용하십시오.

당신은 관리 할 뷰가 테이블보기 만 그 중 하나, 다수의 파단으로 구성되어있는 경우 테이블보기를 관리 할 수있는 UITableViewController의 서브 클래스가 아닌 UIViewController 하위를 사용해야합니다. UITableViewController 클래스의 기본 비헤이비어는 탐색 막대와 탭 표시 줄 (있는 경우) 사이에 테이블보기를 채우는 것입니다.

Apple 지침은 here을 참조하십시오. 기본적으로 컨트롤러가 일반적으로 처리 할 수있는 것들을 처리해야합니다.

+0

UIViewController를 사용하려고했지만 여전히 높이 제한을 벗어날 수 없습니다. 잘못된 용어를 사용하고있을 수도 있습니다. 그것은 내가 스크롤 할 때, 내가 1000 행을 말하면 고정 된 거리를 스크롤 할 수있게 해줄 뿐이므로 더 많은 행이 있으면 결코 넘어갈 수 없다. – user6688986

관련 문제