如何在主视图上移动图像

时间:2011-03-01 08:35:25

标签: iphone uiimageview move scale crop

我遇到了iPhone SDK的问题。 我想创建一个用户可以按照自己的意愿触摸,移动和缩放的imageView。

我该怎么做?

谢谢

4 个答案:

答案 0 :(得分:1)

查看UIGestureRecognizer:http://developer.apple.com/library/ios/#documentation/uikit/reference/UIGestureRecognizer_Class/Reference/Reference.html

尤其是UIPanGestureRecognizer和UIPinchGestureRecognizer

答案 1 :(得分:1)

简单的方法是将它放在UIScrollView中并启用你不想使用的UIScrollViewDelegate方法(scrool / zoom)

看看苹果示例项目“PhotoScroller”,你可以在xCode帮助中找到它......

侨, 卢卡

答案 2 :(得分:1)

用于移动物体,CGAfflineTransformation可以从x轴移动到y轴。

你在Touch Delegates中写下这些代码。还将UIImage框架设置为CGRectZero。

            [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:.50];
    titl.transform=CGAffineTransformMakeTranslation(260, 0);
    comment.transform=CGAffineTransformMakeTranslation(0, 100); 
    [UIView commitAnimations];

这是将对象从一个地方移动到另一个地方的代码。这可能对你有帮助

答案 3 :(得分:1)

 - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
         [UIView beginAnimations:nil context:NULL]; 
         CGPoint touchPoint = [[touches anyObject] locationInView:[self window]];
         float deltaX = touchPoint.x - lastUpdatedPoint.x;
         float deltaY = touchPoint.y - lastUpdatedPoint.y;
         float newCenterX = [[self layer] position].x + deltaX; float newCenterY = [[self layer] position].y + deltaY;
         CGPoint center = CGPointMake(newCenterX, newCenterY);
         [[self layer] setPosition:center]; 
         lastUpdatedPoint = touchPoint;
         [UIView commitAnimations];
       }

BY CNSivakumar