ios - 如何知道 textView 滚动到底部?

标签 ios swift

我有一个textView,它的文字内容会增加。 我想知道如何设置 bool 值,比如 isTextViewScrollToBottom:Bool 当 textView 滚动到底部时,isTextViewScrollToBottom = true 当 textView 离开底部时,则 isTextViewScrollToBottom = false

现在,我只知道可以像这样使用 scrollViewDelegate 函数:

scrollViewDidEndDecelerating(_ scrollView: UIScrollView),

scrollViewWillBeginDragging(_ scrollView: UIScrollView),

scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool)

然后我试试这个:

func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
    checkIsScrollToBottom(scrollView)
}
func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
    checkIsScrollToBottom(scrollView)
}
func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
   checkIsScrollToBottom(scrollView)
}

fileprivate func checkIsScrollToBottom(_ scrollView: UIScrollView){
    if textViewForChatContent.contentSize.height - scrollView.contentOffset.y == 301 {
        isScrollToBottom = true
        print("isScrollToBottom=\(isScrollToBottom)")
    }else{
        isScrollToBottom = false
        print("isScrollToBottom=\(isScrollToBottom)")
    }
}

但是这个判断并不是对所有设备都有用。 有没有人比较懂判断,能知道textView是scroll to bottom吗?

谢谢!

最佳答案

From this question

你可以使用这个函数:

func scrollViewDidScroll(_ scrollView: UIScrollView) {

    if (scrollView.contentOffset.y >= scrollView.contentSize.height - scrollView.frame.size.height) {

        print( "View scrolled to the bottom" )

    }
}

关于ios - 如何知道 textView 滚动到底部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42127405/

相关文章:

ios - 在 Swift 上从 URL 加载/下载图像

iphone - 动画绘制线条

ios - RealityKit 仅显示暗图像

iphone - 在 Core Data 中建模一对多的关系

json - Firebase - 仅获取 JSON 结构的 "title"

ios - UIView动态高度取决于标签高度

javascript - 如何识别照片库中的 GIF 图片 (iOS)

swift - 协议(protocol)扩展初始化器

ios - 有什么方法可以在没有安装 Cocoa-pods 的情况下使用 Pod 文件运行项目?

ios - 如何在 Swift 中合并和格式化数组? (X 和 Y 坐标数组)