在 NSTableView 中滚动
Posted
技术标签:
【中文标题】在 NSTableView 中滚动【英文标题】:Scrolling in NSTableView 【发布时间】:2009-09-16 19:27:53 【问题描述】:我不是在问如何做到这一点,它更符合“你会怎么称呼它?”。
我有一个带有几个自定义单元格的 NSTableView。我希望表格逐行滚动,这意味着当我向上移动滚动条时,我希望顶行消失,当我向下移动时,我希望底行也消失 - 我不想看到我的单元格的一半.
您如何称呼这种行为?如果你已经在 NSTableView 中实现了,你能分享一些指针吗?
【问题讨论】:
【参考方案1】:我不确定这会被称为什么(可能类似于“受限滚动”?),但您可以使用NSView
的-adjustScroll:
方法来实现。
一般的方法是你需要创建一个NSTableView
的子类(如果你还没有),并重写这个方法以返回一个NSRect
,它的origin.y
值被限制为一个倍数你的行高。
您可能还想使用NSScrollView
的-setVerticalLineScroll:
设置当用户单击垂直滚动条中的滚动箭头时的适当滚动量。您可以通过在 tableView 上调用 -enclosingScrollView
来获取 scrollView。
【讨论】:
感谢您的提示。在我接受答案之前让我测试一下。 我只是想实现同样的行为。我遇到了一些问题,底行可能会被切断,因此我将 Clip View 的底部contentInset
增加了行的高度以抵消它。以上是关于在 NSTableView 中滚动的主要内容,如果未能解决你的问题,请参考以下文章
如何在 NSScrollView 中控制 NSTableView 的绘制?