Это можно сделать с помощью распознавания жестов двумя пальцами:
Вы должны просто записать: -
-(void)viewDidLoad
{
UIPinchGestureRecognizer *twoFingerPinch = [[[UIPinchGestureRecognizer alloc]
initWithTarget:self
action:@selector(twoFingerPinch:)]
autorelease];
[[self view] addGestureRecognizer:twoFingerPinch];
}
Этим вы инициализировали экземпляр, который позаботится о ощущениях двух пальцев на экране (или представлении, к которому вы применяете этот метод)
Теперь определите, что делать, если вы узнали два пальца:
- (void)twoFingerPinch:(UIPinchGestureRecognizer *)recognizer
{
NSLog(@"Pinch scale: %f", recognizer.scale);
CGAffineTransform transform = CGAffineTransformMakeScale(recognizer.scale, recognizer.scale);
// you can implement any int/float value in context of what scale you want to zoom in or out
self.view.transform = transform;
}
Определенный выше метод вызывается автоматически не через действия UIButton, но он решит вашу проблему с простотой
Если вы строго хотите использовать масштабирование в IBAction, просто сделайте это:
-(IBAction)methodCalledOnClickingUIButton:(id)sender
{
if(sender==zoomInButton)
{
scaleValue++;
}
else if(sender==zoomOutButton)
{
scaleValue--;
}
CGAffineTransform transform = CGAffineTransformMakeScale(scaleValue,scaleValue);
self.view.transform = transform;
}
Где scaleValue - любое значение с плавающей запятой. Вы можете установить его в соответствии с требованиями вашего приложения!
Я надеюсь, что это будет хорошо работать для вас! :)