问题标签 [nscollectionview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
525 浏览

macos - 如何为 NSCollectionView 创建标题视图

我需要为我的 NSCollection 视图设置一个标题视图。当我研究时,我发现 NSCollection 视图不支持像 NSTableView 这样的默认标题视图。我需要一个几乎与 Skype 中使用的标题类似的标题。IE。除了只显示标题之外,我可能需要在单击与列对应的标题时执行一些操作。例如。单击“名称”列后按名称排序。

如果我子类化并创建自己的标题视图,最好的实现方法是什么?我应该对哪个视图进行子类化以获得 NSTableview 标头的外观和类似 NSButton 的可点击属性?

0 投票
0 回答
844 浏览

cocoa - 调用 keyDown:用于 NSCollectionView 中的项目

当我从键盘上按下一个键时,我有一个问题是让该keyDown:方法为每个项目运行。NSCollectionView

编辑:我的 NSCollectionViewItem 中有下一个代码但不起作用,我该怎么做才能使工作acceptsFirstResponder

(对不起,这里是第一个问题)

0 投票
3 回答
1939 浏览

cocoa - 从 NSScrollView/NSCollectionView 移除边框

正如您在下面的屏幕截图中看到的那样,NSCollectionView我使用的有某种边框(细灰线)我想去掉。有人可以告诉我如何实现这一目标吗?我已经尝试对 NSCollectionView 进行子类化,并尝试在drawRect:by using中覆盖它,[[super layer] setBorderWidth:0.0f];但这不起作用。

在此处输入图像描述

在 Google、SO 和 Apple 文档上搜索也无济于事。那么有没有人已经实现了这一点,或者知道我在哪里可以找到如何做到这一点的例子?

提前致谢, 比约恩

0 投票
0 回答
250 浏览

objective-c - 将 NSCollectionView 视为绝对网格

我的问题很简单: NSCollectionView 设置是否适合用作绝对网格?我可以将特定项目保留在特定的列和行中,防止在视图调整大小时重新排列项目并将所有内容保留在它所属的位置吗?此外,用户重新排列(即将项目移动到任意空白区域)是否可行?

0 投票
1 回答
508 浏览

objective-c - 获取在 NSCollectionView 中单击按钮的视图索引

我有一个NSCollectionView并且我正在添加我的自定义视图,该视图充当NSCollectionViewItem该集合视图。在我的 collectionViewItem 中,我有一个NSButton以及其他各种元素。我有一个onButtonClick连接到该按钮的方法。现在,假设我将 5 个我的 collectonViewItem 项添加到 collectionView 中。如何从单击按钮的位置获取视图的索引?

在里面onButtonClick,我尝试了以下代码,但无论我点击哪个按钮,它总是返回 0:

实现这一目标的正确方法是什么?

0 投票
2 回答
727 浏览

cocoa - 如何在绑定场景中设置 NSButton 的操作?

我有一个在 NSCollectionView 内重复的视图内的按钮。我可以将按钮的标题绑定到模型类中的属性之一,但我想将按钮的选择器连接到模型类中的选择器之一。显然,按钮必须将消息发送到与相应集合视图项关联的模型对象。我设法绑定了按钮的目标,但如何设置选择器?如果可能的话,我想在 Interface Builder 中这样做......

0 投票
1 回答
362 浏览

cocoa - 如何阻止 NSCollectioView 的 selectionIndexes 通知 mouseDown 和 mouseUp

我正在观察 NSCollectionView 实例的“selectionIndexes”,如下所示:

然后我响应 observeValueForKeyPath: 中的变化,如下所示:

我注意到,如果我单击一个项目,我会收到两个通知,一个用于鼠标按下事件,另一个用于鼠标按下事件。两次 selectionIndexes 属性都返回项目的索引。你甚至可以慢慢地点击,向下暂停并观察日志中的两个不同的触发。

这似乎不正常,我该如何阻止?单击 NSCollectionItem 时是否有更好的通知方式?

更新:我发现它被触发了两次,因为我还清除了 observeValueForKeyPath 中的选择:

出于某种原因,NSCollectionView 看到它的选择在该项目的鼠标向上事件中设置为 nil,它会重置选择索引。仍然不确定我想如何解决这个问题,因为我确实需要将选择设置回零。

0 投票
1 回答
854 浏览

cocoa - NSCollectionViewItem,大小到内容

我有一个 NSCollectionView,我将它绑定到一个字符串集合。

我用于 NSCollectionViewItem 的视图非常简单,它只包含一个 NSTextField。

NSView - NSTextField

字符串的长度是可变的。有没有办法调整我的文本字段/视图的大小以考虑字符串的长度?

对于较小的字符串,文本在视图中很好地居中。但是对于较长的字符串,文本会被截断。

如果有帮助,集合中的所有字符串的长度都将大致相同。

0 投票
2 回答
1135 浏览

cocoa - 使 NSCollectionView 垂直渲染项目

是否可以使NSCollectionView渲染中的项目自上而下然后从左到右而不是从左到右然后自上而下?为了直观地描述它,项目当前按以下顺序呈现:

我希望它们看起来像这样:

谢谢。

0 投票
1 回答
1082 浏览

objective-c - NSCollectionView 中的居中项目

我正在为 OS X 的应用程序开发一个简单的画廊,默认情况下,a 的项目NSCollectionView在左边,我如何让它的项目以它的宽度居中?像这张图片:iPhoto