Я создал небольшое тестовое приложение для применения жеста панорамирования к UIButton. Я успешно применил жест панорамирования и смог переместить кнопку. Но проблема в том, что я могу двигать кнопку даже за пределы экрана. Как привязать его к перемещению только на экране iPhone? Вот мой код:
- (void)viewDidLoad
{
[super viewDidLoad];
UIPanGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(pan:)];
[panGesture setMinimumNumberOfTouches:1];
[_shareButton addGestureRecognizer:panGesture];
}
-(IBAction)pan:(UIPanGestureRecognizer *)recognizer
{
CGPoint trans =[recognizer translationInView:self.view];
recognizer.view.center = CGPointMake(recognizer.view.center.x+trans.x, recognizer.view.center.y+trans.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:self.view];
}
Как ограничить перемещение кнопки за пределы экрана? Я использую iOS 7, xcode 5.0.