我一直在尝试使用CGAffinTransformScale实现PhotoView(一个UIImageView实例)的缩放缩放/输入输出(计划使用旋转因此不能指望用于缩放的帧,并且会添加子视图,因此UIScrollView会更复杂,我认为).无论如何,这个概念很容易掌握并且代码很快就汇集在一起......从那以后我一直试图使用三种不同的方法来解决相同的两个(相关的?!)问题,并且无法做到这一点:1-我的代码以某种方式失去了在缩放过程中触摸计数的跟踪,从count = 2到count = 1并返回iPhone,但不是模拟器.2-触摸点1和2在每次移动时保持来回跳跃几个像素,导致图像连续快速地缩小和放大,即使整体效果是用户想要的缩小或放大(两者都是iPhone和模拟器).
这是代码:
#import "PhotoView.h"
@implementation PhotoView;
@synthesize originalCenter, distance, zooming;
- (id)initWithFrame:(CGRect)frame {
if (self = [super initWithFrame:frame]) {
// Initialization code
self.userInteractionEnabled = YES;
self.multipleTouchEnabled = YES;
zooming = NO;
}
return self;
}
float distanceBetweenTwoPoints(CGPoint point1, CGPoint point2)
{
NSLog(@"point1 x: %5.2f point 2 x: %5.2f ---- point 1 y: %5.2f point 2 y: %5.2f",point1.x,point2.x,point1.y,point2.y);
return (sqrt(pow(point1.x -point2.x,2) + pow(point1.y - point2.y,2)));
}
-(void) touchesBegan: (NSSet *) touches withEvent:(UIEvent *) event {
if ([touches …Run Code Online (Sandbox Code Playgroud) iphone ×1