content.boundingRectWithSize计算出来的高度不准


 
计算出来的高度会少一行的高度,最后一行会显示不全。减掉padding会解决这个问题。
 
let padding = self.reviewText.textContainer.lineFragmentPadding
let actualWidth = DishReviewViewController.fullWidth - padding * 2
var height = UXHelper.calculateHeightToFitAttributedString(reviewText, width: actualWidth)
 
static func calculateHeightToFitAttributedString(content: NSAttributedString, width: CGFloat) -> CGFloat {
    return self.calculateSizeToFitAttributedString(content, width: width, height: CGFloat(FLT_MAX)).height
}

static func calculateSizeToFitAttributedString(content: NSAttributedString, width: CGFloat, height: CGFloat) -> CGSize {
    return content.boundingRectWithSize(CGSizeMake(width, height), options: [NSStringDrawingOptions.TruncatesLastVisibleLine, NSStringDrawingOptions.UsesLineFragmentOrigin], context:nil).size
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM