问题标签 [ikimagebrowserview]

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 投票
1 回答
573 浏览

objective-c - iKImageBrowserView 上的高内存使用率(或创建内存质量缩略图?)

在我目前正在开发的 mac 应用程序中,我有一个iKImageBrowserView显示 500/1000 图像的东西。

关闭图像显示,内存消耗非常低,大约 50 MB。
打开图像显示,内存消耗非常高,大约 500 MB。
每次我向上/向下滚动时,内存使用量都会增加。

这是一个片段imageBrowser:itemAtIndex

wherecoverImage是从对象缓存中读取的,并且不是每次都初始化。

我怎样才能减少内存使用量?

更新:我尝试使用imageVersion:来自 DataSourceProtocol,但内存使用率仍然很高。如果我初始化图像但不将它们传递给 ikImageBrowserView 内存不足。

其他更新:我做了另一个测试。每次我分配一个简单的PNG图像的对象。而这一次内存很低。只有当我使用真实图像时才会出现问题。它们是大约 50/100KB 的 JPG。可能当它们被加载到内存中时,它们会解压缩。如何减少 NSImage 的内存使用量?

更新:问题在于 JPEG 的质量。它们在显示时会消耗太多内存。所以问题是:如何在 Cocoa 中生成内存/质量缩略图?

0 投票
1 回答
877 浏览

cocoa - IKImageBrowserView:如何显示每个项目的工具提示?

我挖掘了文档,但没有找到怎么做。如何为 IKImageBrowserView 中的每个项目添加工具提示?

0 投票
0 回答
901 浏览

cocoa - IKImageBrowserView 延迟加载?

为了使用IKImageBrowserView,必须使用以下方法实现数据源

NSTableView这与具有以下数据源方法的没有什么不同

然而,令人不安的区别在于,NSTableView在调用 之前考虑到当前可见的内容– tableView:objectValueForTableColumn:row:IKImageBrowserView似乎会遍历给定的整个范围– numberOfItemsInImageBrowser:并要求imageBrowser:itemAtIndex:. 不幸的是,数据源有时由数十万个项目支持,加载所有不必要的项目是一种可怕的浪费。有没有办法IKImageBrowserView只加载可见的项目,(当然是预加载)就像那样NSTableView

更新

我尝试编写一个NSProxy子类,它确实有效。(好吧,稍后会详细介绍)它看起来像这样

现在,当 imageBrowser 要求时– imageBrowser:itemAtIndex:,我会返回

这很好用!确实实现了延迟加载,我不再一次从商店中检索所有对象。然而,在呼吁reloadData任何意见时,麻烦接踵而至。

这是来自的错误消息NSTableView

IKImageBrowserView另一方面,如果我调用它,它只会挂在我身上而没有任何错误消息reloadData

所以是的,我设法用另一个问题代替了一个问题,c'est la vie?

0 投票
1 回答
527 浏览

macos - 如何使 IKImageBrowserView 快速查看图标看起来像 Finder 图标?

IKImageBrowserView提供了一个与 Finder 非常相似的多图像视图(事实上,一个类转储显示 Finder 在内部使用它)。还有一个常量IKImageBrowserQuickLookPathRepresentationType允许您提供浏览器视图的路径或 URL,它显示为快速查看预览。

但是,这些预览与 Finder 显示的“图标”样式的预览不同:
查找器样式

而是更大的预览:
普通预览

有没有办法让 IKImageBrowserView 使用图标预览样式,带有卷曲的文档角等?

0 投票
1 回答
303 浏览

cocoa - 如何为显示的 IKImageBrowserView 获取 NSBitmapImageRep?

我有一个两格NSSplitView,它的一个子视图是IKImageBrowserView在使用 CATransition 为NSSplitView设置动画之前,我需要捕获它的位图以交换到位。

usingcacheDisplayInRect不会捕获IKImageBrowserView内容,但会捕获其他窗格的内容。我认为这可能与IKImageBrowserView拥有自己的图层树有关。

有人可以确认这是真的吗?

关于如何获取视图内容的位图副本有什么建议吗?

renderInContext不会帮助我,我不认为,因为IKImageBrowserView没有透露引用它的presentationLayer的方法——如果它甚至有一个。

我认为ImageKitCALayers/CAOpenGLLayersalchemy的组合。

谢谢。

0 投票
0 回答
604 浏览

objective-c - 填充 IKImageBrowserView

我目前正在构建一个显示图标的视图,以及图标右侧的文本标签。经过一番搜索,我决定 IKImageBrowserView 最合适。因此,我继续创建了我的 IKImageBrowserView 并将其数据源设置如下:

我还创建了我的数据源,在协议中实现了两个必需的方法:

但是,当我尝试添加一个项目时(如第一个代码块所示),我的 IKImageBrowserView 中没有显示任何内容。我怀疑我在用这种观点做一些明显不正确的事情。有谁知道那可能是什么?

0 投票
2 回答
600 浏览

cocoa - 使用 IKImageBrowserView 快速查看

我知道可以将 IKImageBrowserView 设置为控制 QuickLook 面板,但是如何以编程方式显示该面板?

谢谢

0 投票
1 回答
303 浏览

cocoa - 是否可以以编程方式在 Cocoa 中打印 IKImageBrowserView?

我想用(内容)图像打印 IKImageBrowserView 。我尝试了以下代码

因为IKImageBrowserView是继承自,NSView但打印预览显示空图像。请帮我解决这个问题。提前致谢.....

0 投票
0 回答
449 浏览

objective-c - IkImageBrowserView 错误

我有一个 IkImageBrowserView 实例,用于在我的应用程序中显示文件中的图片。一切正常,但用另一个视图替换它。

我做了一些实验,发现这个消息不会导致应用程序崩溃。而不是每次我用其他视图替换浏览器视图时都会发生。有时我关闭视图,消息也会出现。下面的代码是 browserView 项。根据错误消息,它可能是由图像缓存引起的..但我找不到问题所在

0 投票
1 回答
401 浏览

cocoa - 自定义 IKImageBrowserView 组外观时烦人的三角形

我正在尝试更改 IKImageBrowserView 的组标题的外观。我已经看到我们可以使用 IKImageBrowserGroupHeaderLayer 提供自定义 CALayer

自定义 IKImageBrowserView 组外观

但每次我这样做时,我都会被这个小三角形卡住,它会显示出来并且动画不正确

你对此有什么指示吗?它是一个错误吗?有解决方法吗?

谢谢 :)