NSOutlineView - 在启动时滚动到顶部
Posted
技术标签:
【中文标题】NSOutlineView - 在启动时滚动到顶部【英文标题】:NSOutlineView - scroll to top at launch 【发布时间】:2011-08-18 10:41:26 【问题描述】:获得了一个在控制器的 awakeFromNib 中配置的 NSOutlineView,带有一个数据源和自动保存的扩展节点。
一切都像魅力一样工作。
问题是在某个地方,也有人保存了滚动位置的状态。
这意味着在应用程序启动时,大纲视图可能会滚动到底部 - 如果这是用户上次离开的方式(如果重要,这在 Lion 上)。
在大纲视图滚动到顶部的情况下打开应用程序的最佳方式是什么?最好在 awakeFromNib 中,或者至少这样用户不会看到滚动动作。
【问题讨论】:
【参考方案1】:我最近开始遇到我的 NSOutlineView 向下滚动的问题(所以我在向上滚动之前看不到我的元素),我使用了这种方法:
在我的applicationDidLaunch:
方法中我使用这个:
[outlineView scrollPoint:NSMakePoint(0.0f, [outlineView frame].size.height)];
而且它似乎有效。 (我在 IKImageBrowserView 上也遇到了同样的问题,同样的代码也可以解决这个问题) 希望这个解决方案更适合你^^
【讨论】:
【参考方案2】:[outlineView scrollToVisible:0];
呢?
【讨论】:
您确认outlineView
在执行该行时不为零吗?
接受这个 a 显然是正确的答案,把它写成我这边的一些愚蠢的错误。
不是scrollRowToVisible:
吗?以上是关于NSOutlineView - 在启动时滚动到顶部的主要内容,如果未能解决你的问题,请参考以下文章