在 iOS 上,NSTableView (UITableView) 是延迟加载的,因为表格只显示当前视图所需的单元格,而不是更多。当用户向上或向下滚动时,会从数据源加载更多信息。
OSX有类似的东西吗?我有一个 NSTableView 有 1000 多条记录要加载(+ 多列),这导致加载延迟以及向上或向下滚动时的延迟。
这种“延迟”加载会是一个好的解决方案吗(如果可能的话)?或者也许是类似的东西?
谢谢。
PS关于加载过程-我使用两种常用方法
-(id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
和
-(NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView
加载数据。其中有 if 语句来检查一些变量,因为我有 2 个包含数据的组合框,当包含“ALL”和“ALL”时会加载这 1000 多条记录。如果组合框不是“ALL”和“ALL”,则只加载几条记录,加载得很好。
鉴于您已经解释过延迟加载是自动完成的,我认为问题在于我正在从 XML 文件加载数据,因此解析可能会占用大量处理时间。
我虽然在运行时将 XML 文件中的数据加载到 NSDictionary 中,并将其保存在内存中,以便在需要时使用,这样我就可以避免实际需要显示信息时的加载时间。
你怎么看?谢谢!