Как добавить подвижный UIView как подпредставление с динамическим размером во время выполнения в цели C? - PullRequest
1 голос
/ 12 декабря 2011

Мне нужно добавить UIView как подпредставление UIView, где отображается UIImageview.Что мне нужно реализовать, так это то, что когда изображение загружается в мой UIIMageview, в то же время я показываю, что UIView вызывает его как newView.В начале я показываю его со статическим размером, скажем, 190X170 и альфа как 0,5.Как только я коснусь пальца в этом представлении, оно должно переместиться на весь UIImageview.Как только он будет перемещен в последний раз, это координируется, я беру и кадрирую свое изображение с теми же точками.Теперь я закончил с движущейся частью, используя приведенный ниже код.

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event 
{    
    UITouch *touch = [[event allTouches] anyObject];
    CGPoint touchLocation = [touch locationInView:self.view];
    if (CGRectContainsPoint(newView.frame, touchLocation)) 
    {
        dragging = YES;
        oldX = touchLocation.x;
        oldY = touchLocation.y;
    }
    if (dragging) 
    {     
        newView.layer.borderColor = [UIColor clearColor].CGColor;
        newView.layer.borderWidth = 1.0f;
        CGRect frame = newView.frame;
        frame.origin.x = newView.frame.origin.x + touchLocation.x - oldX;
        x = frame.origin.x;        
        NSLog(@"x value : %d",x);

        frame.origin.y =  newView.frame.origin.y + touchLocation.y - oldY;    
        y = frame.origin.y;
        NSLog(@"y value : %d",y);
        newView.frame = frame;
    }
    oldX = touchLocation.x;
    oldY = touchLocation.y;
}

Что мне нужно реализовать, это изменить размер UIView при прикосновении двумя пальцами, как у UIScrollview.Я пытался реализовать UIScrollview, но он не дает мне хорошего эффекта.Я пытался реализовать NSUInteger resizingMask = NSViewHeightSizable | NSViewWidthSizable; [self.view setAutoresizesSubviews:YES]; [newView setAutoresizingMask:resizingMask]; , но тщетно.Ничего не происходит.

Может кто-нибудь показать мне путь к тому же.Заранее спасибо.

1 Ответ

1 голос
/ 12 декабря 2011

Чтобы обеспечить функцию уменьшения масштаба, вы можете использовать UIPinchGuestureRecognizer.Если вы используете iOS 5, то вам будет очень легко.

вот очень крутой урок, который, надеюсь, вам поможет.

http://www.raywenderlich.com/6567/uigesturerecognizer-tutorial-in-ios-5-pinches-pans-and-more
...