【问题标题】:SWIFT UITableview set autoheight according to contents - XCode - iOSSWIFT UITableview 根据内容设置自动高度 - XCode - iOS
【发布时间】:2016-01-14 06:51:10
【问题描述】:
根据内容动态自动调整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
【问题讨论】:
标签:
ios
xcode
swift
uitableview
【解决方案1】:
我遇到了同样的问题。我通过简单地将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;
}
}
在viewController 的viewDidAppear 函数中调用上述函数。
override func viewDidAppear(animated: Bool) {
UITableView_Auto_Height();
}
【解决方案2】:
BAD::if(self.UITableView.contentSize.height < self.UITableView.frame.height){
GOOD::if(self.UITableView.contentSize.height > self.UITableView.frame.height){