Swift 3 - UITextView 总行计数器

标签 swift xcode swift3 uitextview line-count

祝你一切顺利。

这似乎是一个重复的问题,但对我来说没有任何用处。

我已经查看了这个问题的多个实例,并且尝试了很多不同的方法,但都没有解决我的问题。

我有一个 textview 被限制为 11 行然后变得可滚动.....我想获得文本内容的总行数而不是屏幕上的显示大小所有解决方案只为我提供 11 行但真正的行数是 +- 30 行。即使我显示 5 行文本,它也会返回 11

如何统计所有文本的行数。

任何帮助将不胜感激

最佳答案

使用此扩展来解决您的问题!

extension String {
    func lines(font : UIFont, width : CGFloat) -> Int {
        let constraintRect = CGSize(width: width, height: .greatestFiniteMagnitude);
        let boundingBox = self.boundingRect(with: constraintRect, options: .usesLineFragmentOrigin, attributes: [NSFontAttributeName: font], context: nil);
        return Int(boundingBox.height/font.lineHeight);
    }
}

关于Swift 3 - UITextView 总行计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45373702/

相关文章:

swift - PFQueryTableViewController 查询指向 User 类的指针并将其作为用户名标签放入表中(Swift,Parse)

ios - 使用推送通知服务扩展上传应用程序

swift - Xcode 7.3 已弃用 "++"和 "--"运算符

ios - 如何在 ViewController 中将 xib 作为 "pop up"调出?

ios - 如何在 swift iOS swift cocoa 框架中使用 Objective C 静态框架

ios - 连接SignalR服务器的流程

ios - Swift lottie动画不播放android上播放的一些json文件

ios - Xcode 6.0/6.1 和使用客户端配置文件构建

iphone - 是否有 iPhone API 允许我直接在我的应用程序中使用 VoiceOver?

swift - 我可以制作 Swift 数据类型中缀运算符吗?