怎么知道我们到达了NSTableView的最后一行

时间:2013-06-21 12:43:44

标签: objective-c macos cocoa nstableview

我正在使用

NSTableView来显示数百万个数据,由于超时,我无法得到这些数据。

所以我决定在页面中得到回应说1-100然后101-200等。

所以我的问题从这里开始,我怎么知道我已经到达tableView的末尾或单元格可见说第100行?

我不想实现 Load More.. 类按钮等。

在此之后,我将发送一个新范围的新回复。


这是我到目前为止所尝试的内容:

尝试跟踪scrollView并通过服务调用获取下一组数据。

* 适用于旧鼠标,但滑动失败。

1 个答案:

答案 0 :(得分:4)

也许你可以确定滚动后的最后一个可见行,我用这个方法有一个子类NSTableView

@interface MyTableView : NSTableView
- (NSInteger)lastVisibleRow;
@end


@implementation MyTableView
    - (NSInteger)lastVisibleRow {
        NSRect bounds = [[self superview] bounds];
        bounds.origin.y += bounds.size.height - 1;
        return [self rowAtPoint:bounds.origin];
    }

@end