问题标签 [uipinchgesturerecognizer]

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 投票
2 回答
1598 浏览

ios - 为什么平移让用户将缩放视图移到超级视图之外?

我正在研究 pdf 页面上的捏合和捏出功能。我的捏合和平移(移动)工作正常,但是当用户连续移动缩放视图时,缩放视图超出了超级视图边界。像这样:

这是用户在缩放后所做的移动

我如何限制平移移动,以便用户无法将缩放视图/pdf 移动到超级视图之外。
我正在使用的相关代码是:

- (void)pinchZoom:(UIPinchGestureRecognizer *)gestureRecognizer {


我处理平移移动的方法 :

请建议如何在其超级视图范围内处理平移/移动限制平移。

0 投票
4 回答
1988 浏览

objective-c - 捏 UIScrollView 时发生奇怪的崩溃

在过去的几个小时里,这个问题一直让我发疯。所以我有一个非常简单的 UIScrollView 设置:

就是这样。scrollview 和 imageview 在 Storyboard 中生成。现在我想要做的就是能够缩放到这个图像。最小缩放设置为 1,最大缩放设置为 3。滚动视图的委托设置为我的 RootViewController

在我的 RootViewController 中,我添加了这个功能(需要支持缩放)

我相信我所做的一切都是正确的,但是每当我捏住滚动视图时,我都会得到很棒的 EXE_BAD_ACCESS。我试图到处寻找,但似乎找不到问题。故障转储附在下面

我究竟做错了什么?

也许我太困了

0 投票
1 回答
2290 浏览

ios - 子视图调整为全屏

我在 UINavigationcontroller rootview 中有子视图,动画并将其调整为全屏的最佳方法是什么?我为此子视图和 [UIView animateWithDuration] 方法使用 UIPinchGestureRecognizer,但视图的大小没有改变。

0 投票
4 回答
9381 浏览

iphone - 如何使用 UIPinchGestureRecognizer 设置最小和最大缩放比例

我想放大和缩小图像视图,我不想为此使用 UIScrollView。所以为此我使用了 UIPinchGestureRecognizer ,这是我的代码 -

这适用于放大和缩小。但问题是我想放大和缩小特定比例,比如在 UIScrollView 中,我们可以设置 maxZoom 和 minZoom。我找不到任何解决方案,关于 UIPinchGestureRecognizer 的每个教程都只描述了相同的代码。

0 投票
2 回答
1835 浏览

objective-c - 仅在 x 轴上捏缩放 UIScrollView

我希望能够在 UIScrollView 上捏缩放,以便子视图仅在 x 轴上展开/收缩。

我创建了一个 UIScrollView,并使用 addSubview 添加 UIViews。每个 UIView 中都有一个 UILabel 。我应该在数组中保留这些 UIViews 吗?

当我缩放时,我不希望文本大小受到影响,只是每个框的宽度。我想我也需要最小和最大缩放级别。

Apple 的garageband 应用程序中使用了类似的东西。知道怎么做吗?

0 投票
0 回答
1224 浏览

ios - (iOS) 使用 UIGestureRecognizer 缩放和平移视图

我正在尝试使用 UIGestures 执行类似于 UIScrollView 的缩放和平移。

我的观点是从开/关单元矩阵中得出的,需要能够支持数千个单元。drawRect: 方法负责将矩阵坐标转换为屏幕坐标。该视图具有缩放量的属性和保存偏移量的 CGPoint。

我想如果我能弄清楚下面的缩放和平移,我应该很好。很抱歉下面的代码墙,但它代表了一个完整的实现,它反映了我更复杂的程序。

现在,缩放确实缩放了一切,但它需要一种方法来使自己居中,就像 UIScrollView 缩放一样。

平移根本无法正常工作。


缩放视图.h

ZoomView 负责绘制布尔矩阵。


缩放视图.m

drawRect: 方法进行计算以确定哪个矩阵元素应该位于屏幕的可见部分。屏幕的可见部分由 zoomScale 和偏移量决定。


缩放视图控制器.h

此视图控制器包含手势识别器和处理程序


缩放视图控制器.m

zoomView 设置在 UIView 内,该 UIView 将屏幕框架作为其框架。zoomView 本身比屏幕大一点,以允许绘制半个单元格。


缩放模型.h

这个类只是用随机的开/关值填充一个布尔矩阵,这样我们就可以在屏幕上看到一些东西它在它的访问器方法中模拟了我更复杂的应用程序模型。


缩放模型.m

0 投票
0 回答
639 浏览

iphone - UIScrollView 缩放行为不缩放子视图

因此,我UIScrollView将缩放功能委托给了视图控制器,该视图控制器当然会覆盖:

一切正常(它缩放和滚动)。

然后我把它提高了一个档次,在顶层视图中添加了另外两个 UIScrollView,其目的是充当网格的指南(例如 M$ Excel 中的行和列)。

因此,scrollView 的一个子视图包含一行UILabels(A、B、C、D...),另一个相同,只是UILabels 在列中(1、2、3、4...)。如果这有帮助,请想象一个棋盘。

现在我将主 scrollView 的垂直和水平滚动连接到指南滚动视图,如下所示:

一切正常。

我像这样连接了滚动视图的缩放功能:

这也很好用,除了我实际上不希望它放大UILabel指南视图中的子视图(即 s),我只想要来自缩放而不缩放(放大或缩小)的翻译行为。

我可以通过向UIPinchGestureRecognizer主滚动视图添加 a 并使用它来翻译指南滚动视图中的所有子视图来设想一个解决方案,但也许这里有人可以想出一些更简单的方法。

0 投票
1 回答
1087 浏览

ios - UIPinchGestureRecognizer 向内捏“慢”

我在我的应用程序中使用 UIPinchGestureRecognizer 来放大视图(是的,我不使用 UIScrollView 是有原因的)。当我用手指向外捏合时,视图会按预期放大,如果我在不将手指从屏幕上移开的情况下反向捏合,它也会向右缩放。但是,如果我通过向内捏来启动缩放,则视图缩放的速度会大大降低。我猜这是因为 UIPinchGestureRecognizer 的工作原理 - 向外捏时 UIPinchGestureRecognizer 的比例为 >1,向内捏时为 <1。不幸的是,我不知道如何在我的代码中准确地反映这一点。

0 投票
3 回答
7597 浏览

objective-c - 如何检测捏合手势与捏合手势?

而不是缩放,我认为捏手势通常用于,我只想检测捏是捏还是捏,这样我就可以折叠或展开一些表格部分。我该怎么做呢?

0 投票
2 回答
1102 浏览

ios - 我可以将捏手势识别器传递给 ScrollView 以使其缩放吗?

我为我的ScrollView's缩放编写了一个自定义捏合手势识别器,并在我的视图控制器中的一个方法中处理捏合触摸。

但在某些情况下,我希望ScrollView它的行为与正常行为完全相同(如果它使用 ScrollView 附带的标准捏合手势识别器)。

有没有办法在这种情况下将我的自定义手势识别器传递给ScrollView它,它会像往常一样使用该识别器来缩放视图?

我可以将手势识别器传递给由捏合动作触发的选择器吗?