iPhone: как я могу переместить изображение на другое изображение?

Я хочу добавить небольшой клип на другое изображение.

Я знаю, что могу сделать это, добавив другой imageView в фоновый imageView.

Но я хочу переместить (перетащить) клип на изображение.

Можно ли также масштабировать изображение клипа, например увеличивать или уменьшать масштаб? Как?

Как я могу это сделать?


person iPhone    schedule 22.11.2011    source источник
comment
Вы даже не удосужились найти решение? Stackoverflow и Интернет полны решений для этого. -1   -  person vikingosegundo    schedule 22.11.2011
comment
я получил решение для масштабирования, но не смог найти для перетаскивания !!! :(   -  person iPhone    schedule 22.11.2011
comment
Посмотрите пример кода Apple MoveMe — он делает именно то, что вам нужно.   -  person Till    schedule 22.11.2011


Ответы (2)


Взгляните на Распознаватель жестов : Apple предоставляет множество «стандартных» жестов, которые чрезвычайно просты в реализации.

Суть здесь в том, что вы должны применить нужные распознаватели жестов к представлению изображения клипа, чтобы обеспечить функции перетаскивания, изменения размера и т. Д.

person Ryan Wersal    schedule 22.11.2011

Добавьте UIPanGestureRecognizer в ImageView, который вы хотите перетащить:

UIGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:imageView                                                                                   action:@selector(pan:)];
[imageView addGestureRecognizer:panGesture];
[panGesture release];

Затем реализуйте метод pan примерно так:

- (void)pan:(UIPanGestureRecognizer *)recognizer
{
    if (recognizer.state == UIGestureRecognizerStateChanged) {
    CGPoint translation = [recognizer translationInView:self.superview];
    CGRect currentFrame = self.frame; 
    currentFrame.origin.x = self.frame.origin.x + translation.x;
    currentFrame.origin.y = self.frame.origin.y + translation.y;
    self.frame = currentFrame;
    [recognizer setTranslation:CGPointZero inView:self.superview];
}
}

Чтобы масштабировать ImageView, вы можете добавить UIPinchGestureRecognizer и масштабировать imageView по своему усмотрению.

person Luiz Carlos Querino Filho    schedule 22.11.2011