SWIFT UITableview根据内容设置autoheight - XCode - iOS

时间:2015-10-15 17:28:12

标签: ios xcode swift uitableview

根据内容动态自动调整UITableView的高度。 我尝试了以下解决方案,但对我不起作用:

dispatch_async(dispatch_get_main_queue()) {
        //This code will run in the main thread:
        CGRect frame = self.tableView.frame;
        frame.size.height = self.tableView.contentSize.height;
        self.tableView.frame = frame;
    }

SOURCE

2 个答案:

答案 0 :(得分:9)

我遇到了同样的问题。我已经通过简单地将UITableView内容高度传递到UITabelView帧高度来解决它。

    func UITableView_Auto_Height()
    {
        if(self.UITableView.contentSize.height < self.UITableView.frame.height){
            var frame: CGRect = self.UITableView.frame;
            frame.size.height = self.UITableView.contentSize.height;
            self.UITableView.frame = frame;
        }
    }

viewDidAppear的{​​{1}}功能中调用上述功能。

viewController

答案 1 :(得分:2)

 BAD::if(self.UITableView.contentSize.height < self.UITableView.frame.height){
 GOOD::if(self.UITableView.contentSize.height > self.UITableView.frame.height){