gpt4 book ai didi

ios - titleForHeaderInSection 的文本太长

转载 作者:搜寻专家 更新时间:2023-11-01 06:18:52 25 4
gpt4 key购买 nike

所以我的问题是我的部分上方的文字太长而被截断。

example

有什么方法可以解决这个问题,比如让它长两行?

感谢任何帮助

最佳答案

您需要定义heightForHeaderInSection 并自定义viewForHeaderInSection。您可以将所有标题高度固定为对所有行都足够大的值,或者计算特定标题所需的高度(如下所示)。

let headerFont:UIFont = UIFont.systemFontOfSize(14);
let headerTexts = ["one line", "two line test123 sadfjklsadf asdjfklasjdflk asdfjklasdjfl asdfjklsadf"];

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 2;
}

override func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return heightOfHeaderText(headerTexts[section]);
}

func heightOfHeaderText(text:String) -> CGFloat{
return NSString(string: text).boundingRectWithSize(
CGSizeMake(self.tableView.frame.size.width, 999),
options: NSStringDrawingOptions.UsesLineFragmentOrigin,
attributes: [NSFontAttributeName : headerFont],
context: nil).size.height;


}

override func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {

let headerLabel:UILabel = UILabel.init(frame: CGRectMake(0, 0, tableView.frame.size.width, self.tableView(tableView, heightForHeaderInSection: section)));
headerLabel.numberOfLines = 0;
headerLabel.lineBreakMode = NSLineBreakMode.ByWordWrapping;
headerLabel.font = headerFont;
headerLabel.text = headerTexts[section];

return headerLabel;


}

关于ios - titleForHeaderInSection 的文本太长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38272353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com