Я использую XCode для разработки сенсорного приложения Cocoa для платформы iOS, но мне было трудно выяснить, как реализовать жест смахивания, который позволил бы пользователю проводить пальцем влево или вправо, чтобы перейти на новый ViewController
(файл nib / xib).Я сделал swapView IBAction
, используя кнопку и модальный переход, и я прочитал о TouchGestureRecognizer
от Apple, но я не знаю, как реализовать действие смахивания, которое позволило бы изменить представление.
Я НЕЯ хочу использовать представление прокрутки, поскольку у меня есть несколько десятков контроллеров представления, которые я хочу, чтобы пользователь мог пролистывать.
Вот пример:
Первый просмотр Controller.xib:SwipeRight - перейти ко второму View Controller.xib
Второй просмотр Controller.xib:
SwipeLeft - перейти к первому View Controller.xib
SwipeRight - перейти к третьему представлению Controller.xib
etc, etc
Раньше я не использовал жесты UISwipe / Touch, но я использовал метод IBAction
для переключения видов с помощью кнопки с модальным переходом (см. ниже):
-(IBAction)swapViews; {
SecondViewController *second2 =[[SecondViewController alloc initWithNibName:@"SecondViewController" bundle:nil];
second2.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:second2 animated:YES];
[second2 release];
}
Используете ли вы пролистывание, чтобы сделать подобный метод отформатированным по-другому?Если так, как мне разобраться в этом и отформатировать.
Спасибо
Редактировать - ответить в соответствии с комментарием к вопросу
Поместите это в свой viewDidLoad
UISwipeGestureRecognizer *swipeRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeLeftDetected:)];
swipeRecognizer.direction = UISwipeGestureRecognizerDirectionLeft;
[self.view addGestureRecognizer:swipeRecognizer];
[swipeRecognizer release];
Затем добавьтеселектор, например, вставив следующий код в ваш основной ...
- (IBAction)swipeLeftDetected:(UIGestureRecognizer *)sender {
NC2ViewController *second2 =[[NC2ViewController alloc] initWithNibName:@"NC2ViewController" bundle:nil];
second2.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:second2 animated:YES];
[second2 release];
}
Затем просто убедитесь, что вы импортируете другойViewViewController, на который вы переключаетесь, используя
#import "SecondViewController"
в верхней части вашегоосновной файл.Надеюсь, это поможет.
Конец редактирования