- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的应用程序中有一个 NSSplitView,它有 3 个 Pane 。我对 NSSplitView 进行了子类化,它有一个覆盖:
-(CGFloat) dividerThickness { return 1.0f; }
我已禁用所有限制分隔符最小/最大点和调整 subview 大小等的委托(delegate)方法。
<小时/>当我在视网膜屏幕上拖动任何分隔线时,分隔线的厚度会在拖动过程中发生波动。观看此视频:http://incident57.com/divider.mp4
无论我使用什么厚度的分隔线,都会发生这种情况——拖动过程中厚度总是变化约 1 像素。
这种情况不会发生在非视网膜屏幕上。当窗口本身大小调整时,它也不会发生。仅当拖动分隔线本身时,分隔线宽度才会波动。
(如果你仔细观察,你会发现 View 之间有一些空白,看起来 NSSplitView 应该 正在绘制分隔线,但事实并非如此。看最后视频中棕色选定表格行的位置。)
<小时/>如何解决此问题,以便在视网膜屏幕上拖动时分隔线宽度保持不变?
最佳答案
我通过实现这个 NSSplitViewDelegate 方法解决了这个问题:
- (CGFloat) splitView:(NSSplitView *)splitView constrainSplitPosition:(CGFloat)proposedPosition ofSubviewAt:(NSInteger)dividerIndex
{
return floor(proposedPosition);
}
还值得指出的是,只有当 NSSplitView Pane 中的 subview 是 NSScrollView 时,此问题才会出现。 Pane 内的普通 NSView 不会导致分隔线宽度波动。
关于objective-c - NSSplitView:在视网膜屏幕上拖动时分隔线厚度发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28640970/
很难用语言来表达这个问题,但一个现实世界的例子会有所帮助。如果您查看 iTunes 应用程序,它似乎有一个用于 Sidebar | 的 NSSplitView。内容拆分,以及用于源列表和图稿面板的嵌套
我有一个水平 NSSplitView,它位于另一个垂直 NSSplitView 的右 subview 的顶部。我有委托(delegate)方法来限制左 subview 调整大小。但对于位于顶部的水平
我有一个 NSSplitView,其中两个 NSView 中都有内容。左侧 NSView 有 2 个约束 - Equal Widths 和 Equal Heights。右边的 NSView 有一些简单
我正在使用 NSSplitView 为 macOS 构建一个应用程序。在 splitview 的顶部框架中,有另一个 NSSplitView,这次是垂直的,用于创建一个三 Pane 窗口。 (顶部两帧
我有一个 NSSplitViewDelegate,并且我限制了 SplitPosition。但是,在边缘情况下,如果我移动光标将分隔线拖离屏幕边缘,则分隔线本身会从 (0, 0) 开始。然而,即使提议
在我的应用程序中,我使用 NSSplitView,它能够使用 - (void)setVertical:(BOOL)flag 方法在垂直和水平布局之间切换。问题是,当用户更改布局时,拆分器总是将其位置恢
我想知道是否有一种方法可以以编程方式更改分离器的位置。 最佳答案 您可以使用 setPosition:ofDividerAtIndex: 更改分隔线的位置 关于cocoa - NSSplitView
仅使用 Xcode 提供的自动布局选项是否可以实现以下目的?例如,通过更改拥抱或压缩设置。 实现这种调整大小行为的推荐方法是什么? 最佳答案 如果你想实现固定的左面板,只需在Interface Bui
我有一个 NSSplitView,它有两个 Pane - 左侧是侧边栏表格 View ,右侧是 Web View 。我还有一个委托(delegate)集,用于处理侧边栏的约束,如下所示: - (CGF
我应该如何在NSSplitView内使用自动布局约束 subview ? 我的NSSplitView subview 有 3 个 subview :topPane , tableContainer和b
我有一个带有两个水平 subview 的 NSSplitView。左边是 NSOutlineView,右边是 NSTableView。左 View 对宽度有两个约束:1) >= 150 和 2) B
我正在尝试了解如何检测 NSSplitView 分隔线上的双击。在我看来,分频器既没有暴露给 NSSplitViewDelegate,也没有暴露给 NSSplitViewController。 到目前
我是 OS X cocoa 开发的新手,正在使用 Storyboards for Yosemite 开发 Swift 应用程序。 在我的应用程序的主窗口中,我有一个 NSSplitViewContro
嵌套NSSplitView实例会导致奇怪的行为。当拖动嵌套 splitView 的拆分器时,父 splitView 的拆分器可以移动以容纳更大的子级,作为拖动的副作用。 这是一个重现此问题的极简项目的
我有一个由自动布局支持的 NSSplitView View ,并且效果很好。但是,我需要能够在代码中设置初始分割位置(因为它将从首选项中恢复)。 我不太清楚如何实现这项工作。在 El Capitan
上下文 我的应用程序中有一个 NSSplitView,它有 3 个 Pane 。我对 NSSplitView 进行了子类化,它有一个覆盖: -(CGFloat) dividerThickness {
我正在尝试以编程方式在 NSSplitView 上添加 NSView (以覆盖它)。每次尝试执行此操作都会导致它作为额外的 subview 添加到 NSSplitview 中。有人可以帮忙吗? 代码:
任何人都可以禁用或防止将鼠标移动到 NSSplitView 的分隔线时更改鼠标光标吗? 我有一个 NSWindow ,里面有 splitView ,然后我尝试将 NSView/NSButton 添加到
我怀疑 NSSplitView 中的分隔符数量等于 [[MySplitViewObject subviews] count] -1 并且 NSSplitView 中任何给定分隔符的索引等于分隔线左侧或
我正在使用 NSSpliView 自动布局,设置如下图 分割 View 位于一个可以调整大小的窗口中,当它调整大小时,分隔线会按50:50的比例变化,如何更改它,以便底部 View 的高度保持不变,顶
我是一名优秀的程序员,十分优秀!