我正在开发一个工具,允许用户导入视频剪辑并从这些视频剪辑制作电影。
要表示已创建IKImageBrowserView
的导入视频片段,请将视频片段的帧图像添加为缩略图图像。一切都在这里。
但现在我想根据视频片段持续时间显示缩略图图像大小。即每个缩略图图像具有基于持续时间的不同大小。 (我想根据视频片段的持续时间显示缩略图图像宽度。
如果我使用[imageBrowser setCellSize:];
,则会影响所有缩略图尺寸。但我想为每个缩略图应用不同的大小。
有人可以帮我解决这个问题吗?
如果IKImageBrowserView
不是最适合我的问题,那么请告诉我解决问题的最佳控制方法。
答案 0 :(得分:1)
最佳解决方案是为您的自定义IKImageBrowserCell
IKImageBrowserView
子类
首先,您需要继承IKImageBrowserView
并覆盖newCellForRepresentedItem:
在此方法中,返回您自己的IKImageBrowserCell
。
在IKImageBrowserCell
的子类中,重写以下方法,根据显示的视频剪辑动态修改布局:
(要检索应符合非正式协议的视频剪辑数据模型IKImageBrowserItem
,请使用-[IKImageBrowserCell representedItem]
)
- (NSRect) imageContainerFrame;
- (NSRect) imageFrame;
- (NSRect) selectionFrame;
- (NSRect) titleFrame;
- (NSRect) subtitleFrame;
- (NSImageAlignment) imageAlignment;
还有一个关于ADC的演示项目,可以在
找到