用简单的方法按钮放大和缩小UIView的最佳方法是什么? (e.i
(IBAction)zoomin:(int)distance
{
method here
}
(IBAction)zoomout:(int)distance
{
and here
}
最佳答案
可以使用两指手势识别器完成此操作:
您只需要写下:-
-(void)viewDidLoad
{
UIPinchGestureRecognizer *twoFingerPinch = [[[UIPinchGestureRecognizer alloc]
initWithTarget:self
action:@selector(twoFingerPinch:)]
autorelease];
[[self view] addGestureRecognizer:twoFingerPinch];
}
这样,您已经初始化了一个实例,该实例将在屏幕上(或您要在其上应用此方法的 View )照顾两个手指的感觉
现在定义如果您识别出两个手指该怎么办:
- (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 Action 自动调用的,但是它将通过简单的方式解决您的问题
如果您严格希望在IBAction上使用缩放,则只需执行以下操作:
-(IBAction)methodCalledOnClickingUIButton:(id)sender
{
if(sender==zoomInButton)
{
scaleValue++;
}
else if(sender==zoomOutButton)
{
scaleValue--;
}
CGAffineTransform transform = CGAffineTransformMakeScale(scaleValue,scaleValue);
self.view.transform = transform;
}
其中scaleValue是任何浮点值。您可以根据您的应用程序要求进行设置!
希望它对您有用! :)