我有一个textView,它的文字内容会增加。 我想知道如何设置一个布尔值,像isTextViewScrollToBottom:BOOL 当TextView的是滚动到底部,然后isTextViewScrollToBottom =真 当TextView的是离开底部,然后isTextViewScrollToBottom =假如何知道textView是滚动到底部?
现在,我只知道可以使用scrollViewDelegate FUNC喜欢:
scrollViewDidEndDecelerating(_滚动视图:UIScrollView中),
scrollViewWillBeginDragging(_滚动视图:UIScrollView中),
scrollViewDidEndDragging(_ SC rollView:UIScrollView中,willDecelerate减速:布尔)
,我试试这个:
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是否滚动到底?
谢谢!
重复的是在Objective-C,但由于该解决方案仅仅是scrollOffset的一个基本的线计算,我将其标记为重复。 – 2017-02-09 02:55:13
非常感谢,它解决了我的问题! – DanielTing
NP;高兴地帮助 – 2017-02-09 03:47:32