我正在尝试创建一个表格,其中节标题可以是长字符串.我以为我有正确的设置(动态行数,自动换行集),但字符串在结尾处被截断.请注意,节标题的大小高度为80,在其他地方,这足以显示大约3行文本.
// Format section header override func tableView(tableView: UITableView,willDisplayHeaderView view: UIView,forSection section: Int) { let header: UITableViewHeaderFooterView = view as! UITableViewHeaderFooterView header.contentView.backgroundColor = mainColorBlue header.textLabel.textColor = UIColor.whiteColor() header.textLabel.textAlignment = NSTextAlignment.Left header.textLabel.numberOfLines = 0 // Dynamic number of lines header.textLabel.lineBreakMode = NSLineBreakMode.ByWordWrapping header.textLabel.font = UIFont(name: "HelveticaNeue-Thin",size: 16)! header.textLabel.text = objectsArray[section].sectionName }
我做相反的事情我将行数设置为一个巨大的数字,然后动态大小工作.
>在IB
>不要设置任何WIDTH / HEIGHT常数
> TableViewCells中只有前导跟踪/顶部/底部控件
self.tableView.sectionHeaderHeight = UITableViewAutomaticDimension;
self.tableView.estimatedSectionHeaderHeight = 25;
- (void)viewDidLoad { [super viewDidLoad]; //----------------------------------------------------------------------------------- //DYNAMIC TEXT and TABLE ROW HEIGHT //----------------------------------------------------------------------------------- self.tableView.estimatedRowHeight = 80.0f; //also done in heightForRowAtIndexPath self.tableView.rowHeight = UITableViewAutomaticDimension; self.tableView.sectionHeaderHeight = UITableViewAutomaticDimension; self.tableView.estimatedSectionHeaderHeight = 80.0f; } //comment out //- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
也可以看看
Is it possible to obtain a dynamic table view section header height using Auto Layout?