gpt4 book ai didi

cocoa - 如何解释触控板捏合手势来缩放 IKImageBrowserView

转载 作者:行者123 更新时间:2023-12-03 16:06:56 25 4
gpt4 key购买 nike

我有一个 IKImageBrowserView,我希望能够在最近的 Mac 笔记本电脑上使用多点触控触控板进行捏合缩放。

Cocoa 事件处理指南,在 Handling Gesture Events 部分说:

The magnification accessor method returns a floating-point (CGFloat) value representing a factor of magnification

..然后显示通过将高度和宽度乘以放大率 + 1.0 来调整 View 大小的代码。

这似乎不是缩放 IKImageBrowserView 的正确方法,其 zoomValue 属性被限制在 0.0 和 1.0 之间。

那么,有谁知道如何解释 -[NSResponder magnifyWithEvent:] 中的事件来缩放 IKImageBrowserView

最佳答案

这就是我所做的,在 Snow Leopard 上运行得非常好:

在 10.6 中,NSEvent 具有“放大”方法,该方法将返回正确的数量。您所要做的就是将其添加到旧值,例如[imageBrowser ZoomValue]+[event magnification]

- (void)magnifyWithEvent:(NSEvent *)event
{
if ([event magnification] > 0)
{
if ([self zoomValue] < 1)
{
[self setZoomValue:[self zoomValue] + [event magnification]];
}
}
else if ([event magnification] < 0)
{
if ([self zoomValue] + [event magnification] > 0.45)
{
[self setZoomValue:[self zoomValue] + [event magnification]];
}
else
{
[self setZoomValue:0.45];
}
}
}

这里的 self 是一个 IKImageBrowserView 子类。我在这里设置了一个阈值,以便 zoomValue 不能小于 0.45,但这正是我喜欢的方式。

最诚挚的问候,马蒂亚斯,永恒 Storm 软件

关于cocoa - 如何解释触控板捏合手势来缩放 IKImageBrowserView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1807590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com