由 NSSlider 控制的 IKImageView 缩放
-
20-09-2019 - |
题
通过 NSSlider 在 IKImageView 中设置图像缩放系数的最佳实践是什么?
我能够将滑块绑定到 放大 或者 缩小 IKImageView 的操作。显然,我更愿意看到的是一个控制这两个操作的滑块。最好,如果每次更改滑块后图像都会刷新(即使尚未释放鼠标按钮,也会持续刷新)。
解决方案
这个演示解释了很多: ImageKit演示
特别是,这个片段正是我正在寻找的:
- (IBAction) zoomSliderDidChange:(id)sender
{
[addProductPhotoImageView setZoomFactor:[sender floatValue]];
}
其他提示
在绑定的方法是将结合两个IK图像视图的缩放系数和滑块到控制器的相同的属性的值。当滑块改变属性的值,图像视图将收到通知,并会从您的控制器获得新的价值。
这种方式的一个优点是,您可以添加放大和缩小的更多的方法和滑块的价值不会去陈旧。举一个例子,如果IKImageView增加捏缩放(或者如果它有它已经我没有我的Mac上的多点触控),用户可放大这种方式和滑块会自动更新。这将不会与IBAction
溶液发生。
另一个例子是放大和(与⌘+和⌘-键盘快捷方式也许),该发送动作消息到控制器缩小菜单命令。控制器将通过增加或减少该属性的值(使用它实现一个setter方法)进行响应。随着绑定,无论是图像视图和滑块将更新免费。如果没有绑定,你就必须明确地谈论到这两个图像视图和滑块,告诉一个更新其变焦倍数和其他更新其滑块。
第三个例子将是一个“缩放因子:X%”显示在窗口的一角。移动滑块,捏/ unpinching图像,或按菜单项:绑定的,这可以用于自由,无论用户如何放大图像更新。如果没有绑定,这将是你必须跟你(至少三个)变化的变焦值的动作方法中的另一件事。
不隶属于 StackOverflow