在没有基于UIScrollView的控件的情况下进行缩放

时间:2010-03-07 12:31:11

标签: iphone cocoa-touch ipad

是否有基于UIScrollView的视图执行(捏合)缩放的“接受”方式?

3 个答案:

答案 0 :(得分:1)

有一个code sample by Erica Sadun用于将触摸事件视为可以借用的缩放/旋转/平移变换。基本上,听起来你想要应用缩放仿射变换。当您到达内容的边缘时,此代码不包括“弹回”视图的细节,因此您必须自己完成。

完全披露:我差不多一年没有这样做了。现在可能存在一些框架,其中包含对此功能的更直接的支持。

答案 1 :(得分:0)

如果您使用的是iPhone OS 3.2(适用于iPad)或适用于iPhone 4的iOS 4,则可以使用UIPinchGestureRecognizer类来检测捏合手势。

答案 2 :(得分:0)

此代码有助于在不使用UIScrollView的情况下缩放UIImageView。

-(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;
    }
}