代码之家  ›  专栏  ›  技术社区  ›  LK.

不使用基于UIScrollView的控件的收缩缩放

  •  1
  • LK.  · 技术社区  · 15 年前

    是否有一种“可接受”的方式来执行(收缩)缩放视图

    3 回复  |  直到 15 年前
        1
  •  1
  •   warrenm    15 年前

    有一个 code sample by Erica Sadun 这就完成了将触摸事件视为缩放/旋转/平移变换的数学运算,您可以从中借鉴。基本上,听起来像是要应用缩放仿射变换。这段代码不包括当您到达内容边缘时“反弹”视图的细节,因此您必须自己这样做。

    充分披露:我已经快一年没这么做了。很可能现在有一些框架包含了对这个特性更直接的支持。

        2
  •  0
  •   rekle    14 年前

    如果您使用的是iPhoneOS3.2(用于iPad)或iPhone4的iOS4,则可以使用 UIPinchGestureRecognizer

        3
  •  0
  •   Jason Moore    13 年前

    此代码有助于缩放UIImageView而不使用UIScrollView。

    -(void)HandlePinch:(UIPinchGestureRecognizer*)recognizer{
        if ([recognizer state] == UIGestureRecognizerStateEnded) {
            NSLog(@"=======Scale Applied===========");
            if ([recognizer scale]<1.0f) {
                [recognizer setScale:1.0f];
            }
            CGAffineTransform transform = CGAffineTransformMakeScale([recognizer scale],  [recognizer scale]);
            imgView.transform = transform;
        }
    }