如何知道用户何时到达NSTextView中的文本末尾

时间:2014-05-12 19:57:17

标签: iphone ipad ios7

我的用户正在UITextView中阅读只读文字。当他们完成阅读选择后,我希望能够显示Completed Reading按钮。如何检测用户何时滚动到文本末尾?

3 个答案:

答案 0 :(得分:0)

试试这个。在每次读取之前,首先根据其widt的大小计算textview中文本的大小。然后从那里检查textview的内容偏移量是否已达到文本视图中加载的文本的maxSize大小。

答案 1 :(得分:0)

试试这个:

float scrollerPosition = [[[textView superview] verticalScroller] floatValue];

滚动位置应介于0.01.0之间。

答案 2 :(得分:0)

我认为查阅垂直卷轴的位置是不对的。如果滚动视图很大到足以显示整个文本视图而不滚动会发生什么?滚动条是0.0还是1.0?

我认为您应该参考滚动视图-documentVisibleRect并将其与文字视图-bounds进行比较。如果前者的NSMaxY()大于或等于后者的NSMaxY(),则文本视图的底部是可见的。如果文本视图也可能水平滚动,并且您关心它们是否一直向右滚动,也请以相同的方式检查两个rects的NSMaxX()