3

如何强制NSScrollView使用这样的滚动条:

在此处输入图像描述

独立于输入设备,因为现在如果计算机连接了有线鼠标或应用程序正在笔记本电脑(macbook)上运行,它会使用如下滚动条:

在此处输入图像描述

女巫总是可见的。如果用户更改系统偏好设置中的设置,就有可能达到我想要的结果。但我需要在不改变任何东西的情况下得到这个结果。或者也许有一些简单的方法可以使用 custom NSScrollers

隐藏滚动条是可以接受的结果,但是当我隐藏它们时,我遇到了一些滚动问题。我使用自定义 NSClipView 女巫将 documentView 调整为在调整其帧大小时居中。但是,当我调整帧大小并将其滚动到中心时,如果我滚动到任何地方,它会跳到左下角,然后按应有的方式工作。

4

2 回答 2

2

我正在使用表格视图,我只是把这段代码放在 awakeFormNib 中:

[[self.tableView enclosingScrollView] setScrollerStyle:NSScrollerStyleOverlay];

我也尝试隐藏滚动条,但后来我无法使用触控板滚动内容(使用鼠标没问题)。在另一个项目中,我有类似的表格视图,设置相同,隐藏滚动条不会导致任何问题。

于 2013-11-14T10:55:33.250 回答
1
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notify:) name:NSPreferredScrollerStyleDidChangeNotification  object:nil];

- (void)notify:(NSNotification*)
{
    __weak typeof(self) weakself = self;
    dispatch_async(dispatch_get_main_queue(), ^{
        weakself.scrollView.scrollerStyle = NSScrollerStyleOverlay;
    });
}
于 2015-11-20T08:16:57.103 回答